seguindo um arquivo de log sobre http
Pergunta
Por razões de segurança (Eu sou um desenvolvedor) Eu não tenho acesso à linha de comando para os nossos servidores de produção onde os arquivos de log são escritas. I pode , no entanto acessar esses arquivos de log através de HTTP. Existe um utilitário na forma de "tail -f" que pode "seguir" um arquivo de texto usando apenas HTTP?
Solução
Você pode fazer isso se o servidor HTTP aceita pedidos para retornar partes de um recurso. Por exemplo, se uma solicitação HTTP contém o cabeçalho:
Range: bytes = -500
a resposta conterá os últimos 500 bytes do recurso. Você pode buscar isso e, em seguida, analisá-lo em linhas, etc. Eu não sei de quaisquer clientes ready-made, que vai fazer isso por você. - Eu ia escrever um script para fazer o trabalho
Você pode usar Hurl a experimentar com cabeçalhos (a partir de recursos disponíveis publicamente).
Outras dicas
Eu escrevi um script para o mesmo fim. Você pode encontrá-lo aqui https://github.com/maksim07/url-tail
Você pode usar o utilitário de java pequeno para ler arquivo de log através de HTTP utilizando Biblioteca HTTP Apache.
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
}
Você pode usar PsExec para executar um comando no computador remoto. O comando tail para as janelas podem ser encontradas em http://tailforwin32.sourceforge.net/
Se ele tem que ser HTTP, você pode escrever uma luz de serviço de peso web para conseguir isso facilmente. por exemplo, ler o texto dentro de um arquivo especificado a partir da linha 0 para a linha 200.