Quiero monitorear el archivo de registro de mi aplicación que, sin embargo, no funciona localmente, sino en una plataforma SaaS y está expuesto a través de HTTP y WebDAV. Entonces, un equivalente de tail -f que funcione para URLs haría un gran trabajo para mí.
PD: si conoce otras herramientas que pueden monitorear archivos remotos a través de HTTP, también puede ser de ayuda. Gracias
wget -N http://somewhere/something
, que descargará el archivo solo si es más nuevo que uno que descargó antes o si lo usawget -O - http://somewhere/something
para redirigir el archivo a stdout.Respuestas:
Puede haber una herramienta específica para esto, pero también puede hacerlo usando wget. Abra una terminal y ejecute este comando:
Esto descargará el archivo de registro cada dos segundos y lo guardará para
log.txt
agregar la salida a lo que ya está allí (-c
significa continuar descargando y-a
significa agregar la salida al nombre de archivo dado). El-o
redirige los mensajes de error a/dev/null/
.Entonces, ahora tienes una copia local de log.txt y puedes ejecutarla
tail -f
:fuente
tail -f
no actualiza los cambios de archivos a menos que haya algún otro proceso que solicite activamente al servidor actualizaciones de directorio (ls
parece simple ). El problema setail -f
basa en inotify, e inotify no parece funcionar sobre davfs2.tail
no depende de inotify. Simplemente lee el archivo, busca y lee de nuevo. Si no funciona bien con davfs, eso dependerá de cómo funciona davfs. Presumiblemente, solo actualiza la información cuando algo está leyendo activamente el directorio y, dado quetail
mantiene el archivo abierto, eso no lo activa . O algo por el estilo.Respondí la misma pregunta aquí con un script de shell completo que toma la URL como argumento y
tail -f
es. Aquí hay una copia de esa respuesta textualmente:Esto lo hará:
No es muy amigable en el servidor web. Se podría reemplazar la
true
consleep 1
a ser menos recursos.Por ejemplo
tail -f
, debe hacerlo^C
cuando haya terminado de ver la salida, incluso cuando la salida haya terminado.fuente
La opción de rizo con rango en combinación con el reloj se puede utilizar para lograr esto:
Por ejemplo
Esto recuperará los últimos 2000 bytes del registro cada 30 segundos.
Nota: para el uso de https autofirmado - opción insegurar curl
fuente