监控 Syslog 异常信息通常可以从采集、过滤、告警、可视化、自动化几个层面来做。下面按“从简单到专业”的方式说明,适用于 Linux 服务器环境。
tail -f /var/log/syslog
# 或
tail -f /var/log/messages
grep -iE "error|fail|panic|denied|timeout|unable" /var/log/syslog
常见异常关键字:
error / errfailed / failurewarning(可监控高频 warning)segfaultkernel panicauthentication failureconnection refusedapt install logwatch
logwatch --detail High --service All --range Today
✅ 适合:
journalctl -p err -b
journalctl -p warning --since "1 hour ago"
参数说明:
-p err:只显示 error 及以上-b:本次启动--since / --until:时间范围# /etc/rsyslog.conf
*.* @@log-server:514
集中到日志服务器后统一分析。
架构:
Syslog → Filebeat → Logstash → Elasticsearch → Kibana
能力:
示例过滤规则(Logstash):
if [message] =~ /(?i)error|fail|panic/ {
mutate { add_tag => ["syslog_error"] }
}
Syslog → Promtail → Loki → Grafana
Grafana 中可写日志告警:
count_over_time({job="syslog"} |= "error" [5m]) > 10
error / crit / alert / emerg:立即告警warning:统计后告警(防误报)尤其重要:
authentication failureFailed passwordPOSSIBLE BREAK-IN ATTEMPTsudo: ... command not allowed可配合:
#!/bin/bash
COUNT=$(grep -c "error" /var/log/syslog)
if [ "$COUNT" -gt 20 ]; then
echo "Syslog error spike" | mail -s "Syslog Alert" admin@xx.com
fi
| 场景 | 推荐方案 |
|---|---|
| 单机 | tail + journalctl |
| 小团队 | logwatch + 邮件 |
| 服务器多 | rsyslog + ELK / Loki |
| 安全要求高 | Wazuh / SIEM |
如果你愿意,我可以:
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。