通过日志监控实现网站访问日志的统计与报警

本文为您介绍如何使用日志监控统计网站访问日志(例如:Nginx,Apache)的QPS、状态码和响应时间,并对这些监控项设置报警规则。

重要

仅2022年09月13日22:00:00之前已订购包年包月套餐(cms_edition)的用户或已开通按量计费(cms_post)的用户能使用日志监控功能。日志监控功能将于2024年09月14日下线,建议您使用企业云监控中的SLS日志监控替代。

前提条件

  • 请确保您已购买日志监控数据处理量。更多信息,请参见计费标准套餐

  • 请确保您已将网站访问日志收集到日志服务中。更多信息,请参见日志服务

  • 请确保您已授权云监控访问日志服务的权限。更多信息,请参见授权日志监控

背景信息

网站访问日志(Nginx的AccessLog)在日志服务中的样例如下:

192.168.XX.XX - - [10/Jul/2019:15:51:09 +0800] "GET /ubuntu.iso HTTP/1.0" 0.032 129 200 168 "-" "Wget/1.11.4 Red Hat modified"

在日志服务中提取关键字段,如下表所示。

字段

字段样例

说明

time

2019-06-10 15:51:09

记录日志的时间。

rt

0.032

访问网站的时间。单位:秒。

URL

/ubuntu.iso

访问网站的URL。

status

200

访问网站时,HTTP的返回码。

body

168

访问网站时,返回客户端的HTTP的body大小,不包含header。

统计网站总QPS或单个网站QPS

  1. 登录云监控控制台

  2. 在左侧导航栏,选择接入中心 > 日志监控

  3. 日志监控页面,单击左上角的新建日志监控

  4. 关联资源页面,选择网站访问日志所在的地域日志Project日志Logstore,单击下一步

  5. 监控项定义页面,设置日志分析条件和监控项归属的应用分组,单击下一步

    • 监控项名称:输入监控项名称。

    • 统计方法:设置为statuscountps

    • Group-by:如果统计网站的总QPS,则无需设置;如果统计单个网站的QPS,则设置为URL

      说明

      日志监控只能统计您网站访问日志中前1000个URL的监控数据。

    分析日志-QPS

  6. 报警设置页面,设置报警规则相关参数,单击下一步

  7. 创建结果页面,单击关闭

  8. 日志监控页面,单击目标监控项名称,查看网站QPS的监控图表。

统计网站HTTP访问请求的状态码4XX或5XX的个数

  1. 登录云监控控制台

  2. 在左侧导航栏,单击日志监控

  3. 日志监控页面,单击右上角的新建日志监控

  4. 关联资源页面,选择网站访问日志所在的地域日志Project日志Logstore,单击下一步

  5. 监控项定义页面,设置日志分析条件和监控项归属的应用分组,单击下一步

    • 监控项名称:输入监控项名称。

    • 统计方法:选择status计数

    • 日志筛选:设置日志筛选条件为status>=400status<=599

    • Group-by:如果统计网站的整体状态码4XX或5XX的个数,则无需设置;如果统计网站下各个状态码4XX或5XX的个数,则设置为URL

      说明

      日志监控只能统计您网站访问日志中前1000个URL的监控数据。

    分析日志-状态码

  6. 报警设置页面,设置报警规则相关参数,单击下一步

  7. 创建结果页面,单击关闭

  8. 日志监控页面,单击目标监控项名称,查看状态码4XX或5XX个数的监控图表。