Apakah ada cara untuk mem-remote file 2?
Saya memiliki dua server (a dan b) di belakang load balancer dan saya ingin melakukan sesuatu seperti ini jika memungkinkan:
tail -f admin@serverA:~/mylogs/log admin@serverB:~/mylogs/log
Terima kasih!
Apakah ada cara untuk mem-remote file 2?
Saya memiliki dua server (a dan b) di belakang load balancer dan saya ingin melakukan sesuatu seperti ini jika memungkinkan:
tail -f admin@serverA:~/mylogs/log admin@serverB:~/mylogs/log
Terima kasih!
Jawaban:
Ini bekerja untuk saya:
ssh -n user@hostname1 'tail -f /mylogs/log' &
ssh -n user@hostname2 'tail -f /mylogs/log' &
Ctrl+C
.
fg
; maka kamu bisa ctrl+c
. Anda akan melakukannya sekali untuk setiap ekor yang Anda jalankan. Atau Anda dapat pkill -f ssh
menargetkan mereka semua secara bersamaan.
Opsi pilihan saya adalah menggunakan multitail. Saya menjalankan sesuatu seperti:
multitail -l 'ssh user@host1 "tail -f /some/log/file"' -l 'ssh user@host2 "tail -f /some/log/file"'
Operation not permitted
, dengan 2 3 node web, tidak apa
Operation not permitted
, ada petunjuk?
Saya berpikir mungkin juga untuk menggunakan:
ssh -f user@hostname1 "tail -f /var/log/file" > /tmp/somefile &
ssh -f user@hostname2 "tail -f /var/log/file" > /tmp/somefile &
Opsi -f setelah ssh memungkinkan Anda untuk memasukkan kata sandi sebelum berjalan di latar belakang. Maka Anda dapat memiliki hasil baris demi baris dalam satu file dan menjalankan:
tail -f /tmp/somefile
Akan memberi Anda sedikit lebih banyak kontrol atas perintah "tail" saat ini jika Anda ingin menggunakan opsi ekor lainnya untuk menampilkan output.
Lihat jawaban ini di stackoverflow - ini menggunakan dsh dan tail -f.
Lihatlah multitail . Sama seperti contoh di atas, Anda dapat memberikannya sebagai perintah untuk ssh, dan kemudian Anda akan berakhir dengan satu layar yang menampilkan (dan buffering untuk scrollback mudah) beberapa log. Itu juga mewarnai, yang sangat berguna untuk melihat anomali.
Ssh Paralel memiliki solusi yang bagus untuk ini:
pssh -t0 -H 'host-01 host-02 host-03 host-04' -P tail -f /var/log/app.log
-t0
menonaktifkan batas waktu koneksi, jika tidak pssh menutup koneksi-H '<host>...'
adalah daftar host untuk menjalankan perintah-P
adalah untuk mengaktifkan pencetakan stdout masing-masing hosttail -f /var/log/app.log
dapat berupa perintah apa pun yang dapat dijalankan shell jarak jauh AndaApa yang akan Anda katakan tentang sesuatu seperti ini? http://gist.github.com/303175
Hanya solusi aneh, tetapi berhasil !:
Layar 1
ssh user@hostname1 "tail -f /var/log/file" > /dev/pts/6
Layar 2
ssh user@hostname2 "tail -f /var/log/file" > /dev/pts/6
who am i
dan itu akan menunjukkannya kepada Anda.)
Anda dapat checkout dbitail.
Alat Java yang saya buat, dapat membaca file log lokal dan jauh menggunakan SSH. Ini cukup mudah digunakan.
Beberapa penjelasan lebih lanjut: https://github.com/pschweitz/DBITail/wiki
Cukup unduh versi yang sesuai dengan sistem operasi Anda, dari rilis jar asli yang dapat dieksekusi dalam Java Runtime Anda (membutuhkan java 8_40 atau lebih tinggi):
https://github.com/pschweitz/DBITail/releases
Anda dapat menemukan dokumentasi yang lengkap (disematkan dengan halaman I dan Github juga)
Philippe
atau Anda dapat menggunakan layar untuk membuat dua terminal dan kemudian membaginya.
SSH ke host pertama yang ingin Anda tail file log dan sebelum menjalankan tail, masuk ke layar.
Kemudian tail file pada host ini.
CTRL + A, c akan membuat layar atau jendela baru. Dari jendela baru ini ssh ke host kedua dan ekor file di sana.
Sekarang untuk membuat layar terbagi
CTRL + A, SHIFT + S, ini akan membuat layar terbagi dengan shell saat ini di bagian atas dan bagian bawah kosong. Untuk beralih ke bagian bawah dan meletakkan layar pertama di dalamnya,
CTRL + A, TAB, ini akan memindahkan Anda ke bagian bawah. Sekarang untuk membawa sesi SSH pertama Anda ke area ini:
CTRL + A, "(simbol kutipan) dan pilih sesi pertama dan tekan enter.
Saya menyadari ini mungkin terlihat seperti banyak senam, dan memang begitu, tetapi Anda terbiasa menggunakannya begitu Anda menggunakannya beberapa kali.
Berikut ini adalah tutorial yang sangat bagus atau referensi cepat untuk perintah layar: http://www.pixelbeat.org/lkdb/screen.html
Selain itu, Anda dapat membuat file .screenrc sehingga banyak dari apa yang saya jelaskan dapat diotomatiskan saat pertama kali memasuki layar.
Satu hal yang menyenangkan tentang ini adalah Anda dapat menutup sesi dan melanjutkannya di tempat lain. Misalnya, Anda sedang bekerja dan Anda sedang memantau. Anda bisa menutup sesi Anda tanpa keluar, dan melanjutkan ketika Anda tiba di rumah atau ke lokasi lain.
Anda dapat mengekor file dari jarak jauh menggunakan bash dan rsync, saya menggunakannya dan ini adalah skrip bash yang hebat, lihat tutorial berikut