存档说明:本文反映了2019年发布时使用的工具和环境。
awk 是快速、动手操作 Apache 请求的命令行分析的好工具。当然,确切的语法取决于LogFormat,出于合规性原因,我无法在此处透露。
今天我正在寻找花费超过三秒钟的请求;我的日志中以微秒为单位报告请求时间。我还需要网址,并想将结果限制在特定的时间范围内。在这个例子中, 2019:04:1 代表世界标准时间今天 04:10 到 04:19 之间的所有请求。
这是我的命令:
cat /httpd/logs/access.log |grep "2019:04:1"| awk '{if ($(NF-2) > 3000000) print $4"-----"$7"-----"$(NF-2);}'
$(NF-2) 是每行倒数第三的字段,我知道这个字段包含以微秒为单位的请求时间。该命令打印时间戳(第四个字段, $4)、网址 ($7) 和请求时间 ($(NF-2)).
BERND KUHLEN所有笔记 ↗