Автоматическая загрузка файла журнала с сервера Unix на компьютер с Windows

У меня есть сервер Unix, на котором постоянно работающее приложение генерирует большой текстовый журнал. (примерно 100 мг в час).

Моя основная машина для разработки - это компьютер с Windows, и чтобы посмотреть, что происходит с приложением, я использую Filezilla, чтобы загрузить файл журнала на ПК, где я использую notepad++ для просмотра записей журнала.

Весь процесс кажется мне немного запутанным - поэтому не могли бы вы порекомендовать инструмент, который я мог бы запустить на своем ПК для подключения к Unix-серверу и автоматически загрузить файл журнала, - чтобы я мог анализировать его на своей машине с Windows, где у меня есть все необходимые инструменты (мой доступ к Unix очень ограничен - поэтому просмотр файла журнала в окне Unix на самом деле не вариант).

Спасибо.

5 ответов

У самой Windows есть эти инструменты. Используйте ftp, чтобы получить файл. Вы можете настроить файл с именем snatch.ftp:

user
USERNAME
PASSWORD
get /location/of/logfile.txt logfile.txt
bye

(с подходящими значениями USER и PASSWORD), затем есть командный файл (snatch.cmd) выполнять запланированные задания по любому графику:

ftp -n -s:snatch.ftp

Я должен сказать, что генерация 100M в час не очень хорошая идея для любого файла журнала. Возможно, это необходимо, но вы должны выяснить, почему генерируется так много данных и действительно ли это необходимо.

Перенос 100M в час по сети - это то, о чем я тоже должен быть осторожен. Я знаю, что вы заявили, что у вас нет достаточного доступа к стороне UNIX, но я все равно буду рассматривать это как первый выбор, тем более что инструменты обработки текста в UNIX более чем соответствуют этой задаче.

Как минимум, подумайте о фильтрации файла журнала на стороне UNIX, прежде чем копировать его в свой собственный ящик. Администраторы вашей сети будут вечно благодарны:-)

Можете ли вы использовать функцию "запланированных заданий" Windows, чтобы периодически вызывать ваш ftp-клиент?

Или, если пойти по другому пути, может ли ваш Unix-бокс выдвинуть файл в место, к которому вам проще получить доступ, например на общий диск?

Вы можете создать пакетный файл для ftp(передачи файлов) вашего файла журнала на ваш компьютер. Например, представьте, что ваш сервер Unix - 10.10.10.10, поэтому вы создаете файл с именем ftp.txt,

open 10.10.10.10
anonymous
test@somewhere.com
cd path
get file.log
quit 

затем в командной строке

c:\test> ftp -s:file.txt 
c:\test> notepad file.log

В качестве альтернативы, поскольку у вас есть FileZilla, вы можете просмотреть документацию, чтобы узнать, есть ли какая-либо командная строка, которую вы можете использовать вместо клиента windows ftp.

Похоже, что самый простой и надежный способ получить WGet для Windows и вызвать его с помощью синтаксиса wget ftp://login:password@host/path/file из командного файла.

Автоматизируйте загрузку файла журнала из системы UNIX с помощью пакетной команды ftp.

FTP (протокол передачи файлов) - это утилита передачи файлов, обычно используемая в системах UNIX.

FTP умеет использовать скрипты (списки команд из внешних файлов). В следующем примере демонстрируется скрипт, который открывает соединение с IP-адресом 11.11.11.11, регистрируется на хосте как гость с паролем "guest", загружает файл File1 и затем завершает работу:

open 11.11.11.11
user
guest
guest
put file1
quit

http://support.microsoft.com/kb/96269

Другие вопросы по тегам