Ini adalah tugas yang sangat memakan waktu. Dan ya, itu tentu perlu dituliskan jika Anda akan mencari beberapa string dalam beberapa log yang berbeda pada saat yang sama. Tetapi saya baru-baru ini harus melakukan ini dan itu cukup menyakitkan. Namun demikian, ini dilakukan dan siap dan dapat diunduh dari tautan berikut:
Unduh Script Pencarian Log
Cara kerjanya cukup sederhana.
Skenario 1: Pantau SATU string hanya dalam SATU file log
./logsearch.sh localhost /var/tmp/logXray autonda /var/log/messages 60m 'can.*t.*open' '.' 1 2 single_errCheck -ndshow
Skenario 2: Pantau string MULTIPLE hanya dalam SATU file log
./logsearch.sh localhost /var/tmp/logXray autonda /var/log/messages 60m 'can.*t.*open_P_ntpd.*stat' '.' 1 2 multi_errCheck -ndshow
Skenario 3: Memantau string Tunggal / Banyak dalam beberapa file log
./logsearch.sh localhost /var/tmp/logXray autonda /var/log 60m 'can.*t.*open_P_ntpd.*stat' '.' 1 2 multi_err_multi_logCheck -ndshow
Catatan:
_P_ berarti ATAU - Ini menggantikan pipa "|" simbol karena kecil kemungkinan Anda harus mencari string yang mengandung "_P_". Jika Anda tidak ingin mengetik "_P_", Anda bisa mengganti _P_ dengan "|".
Saat menggunakan skrip ini, parameter yang akan sering Anda ubah adalah:
- File log atau direktori log yang akan dimonitor
- Usia file log harus dipantau..yaitu jangan memonitor atau menemukan file log apa pun yang memiliki stempel waktu lebih dari 60 menit
- String / pola yang ingin Anda perhatikan
- Tag - ini adalah argumen kedua hingga terakhir yang harus Anda berikan. Ini mencatat statistik tentang file log yang sedang Anda pantau di bawah / var / tmp / logXray
- Opsi log -ndshow - Ini adalah parameter yang ingin Anda gunakan jika Anda ingin menampilkan entri dari log yang ditemukan cocok dengan pola yang Anda tentukan. Jika Anda hanya ingin melihat jumlah total setiap pola yang ditemukan, cukup ganti '-ndshow' dengan '-ndfoundmul'.
Saat menggunakan '-ndfoundmul', Anda akan mendapatkan output yang mirip dengan:
[root@dgphxtest001]# ./logsearch.sh localhost /var/tmp/logXray autonda /var/log/messages 60m 'can.*t.*open_P_ntpd.*stat' '.' 1 2 blahblahA -ndfoundmul
OK: [/var/log/messages][1] /var/log/messages:P=(can_t_open=0 ntpd_stat=0)_F=(117s)_R=(228,228=0)
Solusi untuk Masalah Poster Asli: Pindai Banyak string dalam banyak file log
./logsearch.sh localhost /var/tmp/logXray autonda /var/log 60m 'fatal_P_error_P_critical_P_failure_P_warning' '.' 1 2 multierr_logCheck -ndshow
OS: Ini diuji di Ubuntu dan Red Hat
grep
dapat mengambil lebih dari satu argumen file.