¿Hay alguna forma de archivos remotos de tail 2?
Tengo dos servidores (ayb) detrás de un equilibrador de carga y me gustaría hacer algo como esto si es posible:
tail -f admin@serverA:~/mylogs/log admin@serverB:~/mylogs/log
¡Gracias!
¿Hay alguna forma de archivos remotos de tail 2?
Tengo dos servidores (ayb) detrás de un equilibrador de carga y me gustaría hacer algo como esto si es posible:
tail -f admin@serverA:~/mylogs/log admin@serverB:~/mylogs/log
¡Gracias!
Respuestas:
Esto funcionó para mí:
ssh -n user@hostname1 'tail -f /mylogs/log' &
ssh -n user@hostname2 'tail -f /mylogs/log' &
Ctrl+C
.
fg
; entonces puedes ctrl+c
hacerlo. Lo harías una vez por cada cola que tengas corriendo. O podrías pkill -f ssh
apuntar a todos ellos al mismo tiempo.
Mi opción preferida es ir con multitail. Me gustaría correr algo como:
multitail -l 'ssh user@host1 "tail -f /some/log/file"' -l 'ssh user@host2 "tail -f /some/log/file"'
Operation not permitted
, con 2 3 nodos web, está bien
Operation not permitted
, ¿alguna pista?
Estaba pensando que también podría ser posible usar:
ssh -f user@hostname1 "tail -f /var/log/file" > /tmp/somefile &
ssh -f user@hostname2 "tail -f /var/log/file" > /tmp/somefile &
La opción -f después de ssh le permite ingresar una contraseña antes de que se ejecute en segundo plano. Entonces podría tener los resultados línea por línea en un solo archivo y ejecutar:
tail -f /tmp/somefile
Le daría un poco más de control sobre el comando "cola" actual en caso de que quisiera usar otras opciones de cola para mostrar la salida.
Mira esta respuesta en stackoverflow : usa dsh y tail -f.
Paralelo ssh tiene una buena solución para esto:
pssh -t0 -H 'host-01 host-02 host-03 host-04' -P tail -f /var/log/app.log
-t0
desactiva el tiempo de espera de la conexión, de lo contrario, pssh cerró la conexión-H '<host>...'
es la lista de hosts para ejecutar el comando-P
es habilitar la impresión de stdout de cada hosttail -f /var/log/app.log
puede ser cualquier comando que pueda ejecutar su shell remoto¿Qué dirías sobre algo como esto? http://gist.github.com/303175
¡Solo una solución extraña, pero funciona !:
Pantalla 1
ssh user@hostname1 "tail -f /var/log/file" > /dev/pts/6
Pantalla 2
ssh user@hostname2 "tail -f /var/log/file" > /dev/pts/6
who am i
y se lo mostrará).
Puedes pagar dbitail.
Una herramienta Java que creé, capaz de leer archivos de registro locales y distantes usando SSH. Es bastante simple de usar.
Algunas explicaciones más: https://github.com/pschweitz/DBITail/wiki
Simplemente descargue la versión correspondiente a su sistema operativo, del ejecutable de lanzamiento de jar nativo dentro de su Java Runtime (requiere java 8_40 o superior):
https://github.com/pschweitz/DBITail/releases
Puede encontrar una documentación completa (incrustada con y también la página de Github)
Philippe
o puede usar la pantalla para crear dos terminales y luego dividirlos.
SSH en el primer host del que desea ajustar el archivo de registro y, antes de ejecutar tail, ingrese a la pantalla.
Luego, siga el archivo en este host.
CTRL + A, c creará una nueva pantalla o ventana. Desde esta nueva ventana, ingrese al segundo host y siga el archivo.
Ahora para crear la pantalla dividida
CTRL + A, SHIFT + S, esto creará una pantalla dividida con el shell actual en la parte superior y la parte inferior vacía. Para cambiar a la parte inferior y colocar la primera pantalla dentro de ella,
CTRL + A, TAB, esto lo moverá a la parte inferior. Ahora para traer su primera sesión SSH a esta área:
CTRL + A ", (símbolo de comillas) y seleccione la primera sesión y presione enter
Me doy cuenta de que esto puede parecer una gran cantidad de gimnasia, y lo es, pero te acostumbras una vez que lo usas varias veces.
Aquí hay un tutorial realmente bueno o una referencia rápida a los comandos de la pantalla: http://www.pixelbeat.org/lkdb/screen.html
Además, puede crear un archivo .screenrc para que gran parte de lo que describí pueda automatizarse la primera vez que ingrese a la pantalla.
Otra cosa buena de esto es que puede cerrar su sesión y reanudarla en otro lugar. Por ejemplo, estás en el trabajo y tienes algo de monitoreo. Puede cerrar su sesión sin cerrar sesión y reanudarla cuando llegue a casa o a otra ubicación.
Puede seguir archivos de forma remota usando bash y rsync, lo estoy usando y es un gran script de bash eche un vistazo al siguiente tutorial