由于我的应用程序的性质,我的服务器被大量请求轰炸,其中大多数是非通用的。每天约 30MB 的 access.log 中只有大约 1MB 代表真实用户。这让我决定完全禁用访问日志。
不过,我还是想知道 Apache 每天至少处理多少个请求。是否可以只记录处理的请求数而不记录任何其他信息?
我考虑过使用单个字符的自定义日志格式,然后计算行数,但这有点不方便,所以决定询问是否有更清晰的解决方案。
答案1
mod_status
提供请求总数和已服务字节总数的计数器,以及一些其他统计数据。如果您需要的是总数(而不是路径/状态/等),那么这个就很管用。
https://httpd.apache.org/docs/2.4/mod/mod_status.html
您可以配置 Prometheus 导出器来抓取它,这样它就可以用于绘制图形、发出警报和分析随时间变化的趋势:https://github.com/Lusitaniae/apache_exporter