Чтение живых журналов через SSH - PullRequest
1 голос
/ 24 ноября 2011

Я нахожусь на ранней стадии приложения для чтения журналов в Cocoa / Objective-C, и у меня возникают проблемы с поиском наиболее эффективного способа сделать это.Журналы являются «живыми» и доступны только через SSH для удаленного хоста.Данные будут проанализированы в моем приложении.(Это приложение для Mac OSX, а не iOS, использующее XCode 4.0 на SL)

До сих пор я нашел 2 метода:

  1. Использование NSTask для запуска ssh и 'file-tail -f-n0 'в сочетании с NSPipe.
  2. Включить сам File-tail в мое приложение (доступно на странице Apple с открытым исходным кодом) и перейти оттуда.

Если это был просто HTML или XMLМне нужно было захватить, все будет в порядке, но из-за необходимости ssh и подбора файлов в «живом» журнале это трудно понять.

Есть предложения?Есть ли что-то похожее на «file-tail», спрятанное в фреймворке, где я пропускаю?Большое спасибо за вашу помощь!

1 Ответ

1 голос
/ 24 ноября 2011

Файл tail на самом деле не ваша проблема - вы можете смоделировать его с помощью dispatch_source. Трудно написать самому себе клиент ssh. Есть несколько клиентов с открытым исходным кодом, но, насколько я знаю, ни один из них не является действительно либеральным. Также некоторые имеют проблемные лицензии.

Использование NStask, вероятно, будет либо с открытым исходным кодом Librey и на 75 строк меньше связующего кода, либо примерно на 3 000 строк кода меньше (извините, догадки, я никогда не писал клиента ssh v2, только v1).

NStask обычно более хрупок, чем встроенный код, но с ssh основным источником хрупкости, вероятно, является сеть + удаленная конфигурация + локальная конфигурация. NStask потеряется в шуме.

Я бы предпочел использовать NStask здесь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...