Rumah > Artikel > Operasi dan penyelenggaraan > Bagaimana untuk melaksanakan analisis log masa nyata di Linux?
Bagaimana untuk melaksanakan analisis log masa nyata dalam Linux?
Dengan perkembangan pesat Internet, analisis log semakin menjadi tugas penting, membantu kami memahami status pengendalian sistem, penyelesaian masalah dan audit keselamatan. Dalam persekitaran Linux, keperluan untuk analisis log masa nyata menjadi semakin penting. Artikel ini akan memperkenalkan cara melaksanakan analisis log masa nyata dalam Linux dan memberikan contoh kod.
1. Lihat fail log
Pertama, kita perlu melihat fail log untuk dianalisis. Fail log biasanya terletak dalam direktori /var/log sistem Linux yang biasa digunakan ialah: /var/log/syslog (log sistem), /var/log/auth.log (log pengesahan), /var/. log/kern .log (log kernel), dsb. Dengan menggunakan ekor alat baris arahan, kita boleh melihat kandungan fail log dalam masa nyata.
Sebagai contoh, arahan berikut boleh melihat log sistem dalam masa nyata:
tail -f /var/log/syslog
2 Tapis kata kunci
Dalam analisis log sebenar, kami biasanya hanya menumpukan pada maklumat log yang berkaitan dengan kata kunci tertentu . Untuk menapis kata kunci dalam masa nyata, kita boleh menggunakan alat baris arahan grep.
Sebagai contoh, arahan berikut boleh menapis log sistem yang mengandungi kata kunci "ralat" dalam masa nyata:
tail -f /var/log/syslog | grep "error"
3. Selain menapis kata kunci , Kami juga mungkin perlu melaksanakan statistik pada maklumat log, seperti mengira kekerapan kata kunci tertentu. Untuk mencapai fungsi ini, kita boleh menggunakan alat baris arahan awk.
tail -f /var/log/syslog | +} TAMAT { for (line in count) print line": "count[line]" times"}'
Untuk mencapai analisis log automatik, kami boleh menggunakan skrip shell dan tugasan berjadual cron dalam kombinasi. . Berikut ialah contoh skrip shell untuk pengiraan masa nyata bilangan kata kunci "ralat" yang muncul dalam log sistem seminit:
do
# 统计每分钟的错误次数 count=$(tail -n 100 ${LOG_FILE} | grep -c "error") # 将统计结果输出到日志文件中 echo "$(date +"%Y-%m-%d %H:%M:%S"): ${count}" >> ${LOG_FILE}_error.log # 休眠60秒 sleep 60done Simpan kod di atas ke fail skrip (such sebagai log_analysis sh) dan tambahkan kebenaran boleh laku. Kemudian, kita boleh menggunakan tugas berjadual cron untuk melaksanakan skrip setiap minit:
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan analisis log masa nyata di Linux?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!