По соображениям безопасности (я разработчик) У меня нет доступа к командной строке для наших производственных серверов, на которых записаны файлы журналов. I может, однако доступ к этим файлам журнала через HTTP. Есть ли утилита в виде «tail -f», которая может «следовать» в текстовом файле, используя только HTTP?после файла журнала по адресу http
ответ
Это можно сделать, если HTTP-сервер принимает запросы на возврат частей ресурса. Например, если запрос HTTP содержит заголовок:
диапазон: байт = -500
ответ будет содержать последние 500 байт ресурса. Вы можете получить это, а затем проанализировать его в строках и т. Д. Я не знаю никаких готовых клиентов, которые сделают это для вас - я бы написал сценарий для выполнения этой работы.
Вы можете использовать Hurl для экспериментов с заголовками (из общедоступных ресурсов).
Для выполнения команды на удаленном компьютере вы можете использовать PsExec. Команда хвоста для окон можно найти по адресу http://tailforwin32.sourceforge.net/
Если это HTTP, вы можете написать легкий веб-сервис, чтобы легко достичь этого. , например, читать текст в указанном файле из строки 0 в строку 200.
Я не смогу выполнить что-либо дистанционно, что сделало бы людей безопасности апоплексическими. Я надеялся, что что-то уже существовало, прежде чем я попробовал опрокинуться. – kurosch
Я написал сценарий bash для этой же цели. Вы можете найти его здесь https://github.com/maksim07/url-tail
Вы можете использовать небольшую утилиту java для чтения файла журнала через Http с помощью Apache HTTP Library.
HttpClient client = HttpClientBuilder.create().build();
HttpGet request = new HttpGet(uri);
HttpResponse response = client.execute(request);
BufferedReader rd = new BufferedReader(new InputStreamReader(
response.getEntity().getContent()));
String s = "";
while ((s = rd.readLine()) != null) {
//Process the line
}
+1 Это очень полезно. Я подумал об использовании метода HEAD, чтобы надеяться получить размер ресурса, чтобы увидеть, добавлено ли что-либо новое. В сочетании с GET на определенном диапазоне я могу быть на что-то. Благодаря! – kurosch