Linux 日志分析是系统运维、安全审计和故障排查的关键环节,以下分类整理了常用的工具及使用场景,供不同需求选择:
grep
grep "error" /var/log/syslog
awk/sed
bash
awk '$9 == 404 {count++} END {print count}' /var/log/nginx/access.log
tail/head
tail -f /var/log/apache2/error.log
head -n 100 /var/log/syslog
journalctl(Systemd系统专用)
journalctl -u nginx --since "2023-01-01"
journalctl -f
Logrotate
rsyslog/syslog-ng
multitail
multitail /var/log/nginx/access.log /var/log/nginx/error.log
ELK Stack(Elasticsearch + Logstash + Kibana)
Graylog
Loki + Grafana
Splunk(企业级商用)
fail2ban
GoAccess
bash
goaccess /var/log/nginx/access.log --log-format=COMBINED -a
Zeek(原Bro)
grep
+ journalctl
+ multitail
根据团队规模和技术栈选择合适的工具组合,小型环境可能只需基础工具,而复杂系统可能需要ELK等全套方案。