Log Analyzer

自动分析服务器日志中的错误模式、IP频率与时间趋势,识别异常和高发问题。

已扫描
适合谁
系统运维工程师、后端开发人员
不适合谁
无服务器日志访问权限的普通用户、不熟悉命令行操作的初学者
国内可用性
需网络配置。可能需要网络配置或第三方服务可访问。
安装难度
新手友好(★☆☆)。基于终端操作、依赖、API Key 和本地环境要求的初步判断。

安装与下载

openclaw skills install @laolaoqi/laolaoqi-log-analyzer

Skill 说明

命令、参数、文件名以原文为准

日志分析器

脚本

scripts/log-analyzer.sh — 所有分析的单一入口点。

该脚本自包含,可在任何具备标准工具(grep、awk、sort、uniq)的 Linux 系统上运行,并支持文件输入和管道输入。

快速开始

分析 /var/log/syslog 文件并执行所有检查:

bash scripts/log-analyzer.sh -f /var/log/syslog --all

或直接通过管道传递日志:

journalctl -u nginx --since "24 hours ago" | bash scripts/log-analyzer.sh --all

选项

选项说明
-f <file>要分析的日志文件(使用 - 表示标准输入)
-p <pattern>自定义错误模式(默认:error/i, fail/i, warn/i, critical/i, exception)
-t <hours>时间窗口(小时),默认值为 24
--errors查找最常见的错误消息及其出现频率
--time-analysis按时间段(每小时/每天)分组错误,分析发生时间分布
--ips从日志条目中分析 IP 地址的出现频率
--spikes识别异常模式和突增情况
--all运行所有分析(若未指定其他选项,默认行为)
--help显示帮助信息

分析模块

错误模式检测 (--errors)

扫描配置的错误模式,按频率分组排序,展示最常见的错误消息。

基于时间的分析 (--time-analysis)

将错误按每小时和每天的时间段进行分组,以显示问题最常发生的时段。

IP 频率分析 (--ips)

从日志条目中提取 IPv4 地址,统计出现次数,列出高频来源。

突增检测 (--spikes)

将每个时间段内的错误数量与平均值对比。超过平均值两倍的时间段会被标记为潜在异常。

常见发现与建议

  • 同一来源重复出现错误:检查应用程序或服务状态;可考虑限流或重启
  • 特定时间段内错误突增:结合定时任务、部署操作或流量变化进行排查
  • 高频率访问的 IP 地址:可能为暴力破解、爬虫或 DDoS 攻击行为,建议配置防火墙规则或使用 fail2ban
  • 新出现的错误模式:近期变更或部署可能导致回归问题
  • 警告数量突然增加:通常预示着即将发生严重故障,应主动排查

注意事项

  • 管道输入从标准输入读取;使用管道时请显式指定 -f -
  • 对于大日志文件(>100MB),建议通过 -t 缩短时间窗口,或先用 grep 进行预过滤
  • 时间分析功能依赖标准 syslog 格式(RFC 3164 或 RFC 5424);自定义格式可能需要调整
  • IP 检测使用标准 IPv4 正则表达式 —— 目前不支持 IPv6
  • 用户拥有权限的日志文件无需 root 权限即可运行;系统日志可能需要 sudo 权限
L
@laolaoqi

已收录 1 个 Skill

相关推荐