Por razones de seguridad (soy desarrollador) no tengo acceso de línea de comandos a nuestros servidores de producción donde se escriben los archivos de registro. I puede, sin embargo, acceda a esos archivos de registro a través de HTTP. ¿Existe una utilidad en la forma de "tail -f" que pueda "seguir" un archivo de texto plano usando solo HTTP?siguiendo un archivo de registro a través de http
Respuesta
Puede hacerlo si el servidor HTTP acepta solicitudes para devolver partes de un recurso. Por ejemplo, si una petición HTTP contiene el encabezado:
Range: bytes = -500
la respuesta contendrá los últimos 500 bytes del recurso. Puede buscar eso y luego analizarlo en líneas, etc. No conozco ningún cliente prefabricado que haga esto por usted; escribiría un script para hacer el trabajo.
Puede usar Hurl para experimentar con encabezados (de recursos disponibles públicamente).
Puede usar PsExec para ejecutar el comando en la computadora remota. El comando tail para windows se puede encontrar en http://tailforwin32.sourceforge.net/
Si tiene que ser HTTP, puede escribir un servicio web liviano para lograrlo fácilmente. por ejemplo, leer texto dentro de un archivo especificado de la línea 0 a la línea 200.
No podría ejecutar nada remotamente, eso haría que las personas de seguridad se vuelvan apopléticas. Esperaba que algo ya existiera antes de intentar rodar el mío. – kurosch
Escribí un script bash para el mismo propósito. Puede encontrarlo aquí https://github.com/maksim07/url-tail
Puede utilizar la utilidad java pequeña para leer el archivo de registro a través de HTTP utilizando la biblioteca HTTP de Apche.
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. ¿Cómo descargo un archivo a través de HTTP usando Ruby?
- 2. Enviando un archivo a través de HTTP PUT en PHP
- 3. Obtener fecha de creación de archivo a través de HTTP
- 4. Comprimir archivo antes de cargarlo a través de http
- 5. Registro de mensajes de formulario HTTP a través de un navegador
- 6. Transferencia de archivos a través de HTTP
- 7. http to https a través de .htaccess
- 8. Encontrar un archivo de texto en un servidor web a través de HTTP
- 9. Python: descarga de un archivo a través de HTTP con barra de progreso y autenticación básica
- 10. C# enviar imagen a través de HTTP
- 11. Descargar HTTP a través de sockets (C)
- 12. Envío de un archivo a través de POST usando HTTP pura (masilla)
- 13. Transmisión de un archivo comprimido a través de http en .net con SharpZipLib
- 14. ¿Descargue un archivo a través de HTTP en una matriz de bytes en C#?
- 15. ¿Cómo leo archivos seleccionados de un archivo Zip remoto a través de HTTP usando Python?
- 16. inteligente HTTP a través de IIS
- 17. Comunicación con un proxy HTTP a través de .NET TcpClient
- 18. Java: transmitir el contenido de Zipfile a través de HTTP
- 19. ¿Cómo descargo un archivo grande (a través de HTTP) en .NET?
- 20. ¿Cómo enviar un archivo a través de HTTP, la mejor manera, usando Python?
- 21. ¿Deshabilitar el registro de Apache HTTP Client?
- 22. El envío de datos binarios a través de http
- 23. Controladores de protocolo en Chrome a través del Registro
- 24. PHP: determine cuántos bytes se enviaron a través de http
- 25. Registro de Java: ¿cómo redirigir la salida a un archivo de registro personalizado para un registrador?
- 26. ¿Salida de registro de Jersey a un archivo?
- 27. Acceso a JMX a través de alternativas HTTP
- 28. MPMoviePlayerController reproduce el archivo local pero no de forma remota a través de HTTP
- 29. Bloquee el acceso directo a un archivo a través de http, pero permita el acceso de script php
- 30. solicitud HTTPS a través de AJAX de la página HTTP
+1 Esto es muy útil. Pensé en utilizar un método HEAD para obtener el tamaño del recurso y ver si se había agregado algo nuevo. Junto con un GET en un rango específico, podría estar en algo. ¡Gracias! – kurosch