ubuntu

Ubuntu LNMP中Nginx日志如何分析

小樊
53
2025-08-27 12:23:22
栏目: 智能运维

Ubuntu LNMP中Nginx日志分析方法如下:

一、基础日志查看与处理

  1. 日志文件位置

    • 访问日志:/var/log/nginx/access.log
    • 错误日志:/var/log/nginx/error.log
  2. 命令行基础分析

    • 查看日志catlesstail -f(实时查看)。
    • 搜索关键字grep "error" /var/log/nginx/error.log
    • 过滤时间范围awk按时间戳筛选(如awk '$4 >= "[01/Jan/2025:00:00:00"' access.log)。
    • 统计信息
      • TOP 10 IP:awk '{print $1}' access.log | sort | uniq -c | sort -nr | head -10
      • 状态码分布:awk '{print $9}' access.log | sort | uniq -c

二、高级分析工具

  1. 可视化工具

    • GoAccess:生成HTML报告,支持实时分析,命令示例:
      goaccess -f access.log --log-format=COMBINED -o report.html
    • ELK Stack:用于大规模日志的收集、分析和可视化。
  2. 安全分析脚本

    • 可使用开源脚本检测异常请求(如SQL注入、扫描行为),示例脚本可参考。

三、常见问题分析

  1. 错误日志重点关注

    • 4xx错误:如404(资源不存在)、403(权限不足),需检查URL配置或权限。
    • 5xx错误:如500(服务器内部错误)、502(网关错误),需排查后端服务或Nginx配置。
    • 异常请求:通过$request字段识别非正常HTTP方法(如TRACE、DELETE)。
  2. 性能优化方向

    • 分析$request_time(请求处理时间),定位慢请求。
    • 统计$http_referer,识别异常流量来源(如爬虫或恶意请求)。

四、日志管理建议

参考来源:[1,2,3,4,5,6,7,8,9,10,11]

0
看了该问题的人还看了