按站点 URL 而不是 vhost 解析 AWS Load Balancer 日志文件(使用 GoAccess)

Parse AWS Load Balancer log file by site URL instead of vhost (using GoAccess)

我想解析存储在 S3 中的 AWS Load Balancer 日志文件,以计算站点 URL www.example.com 而不是虚拟主机 app/something.com 的指标。这可能吗?我正在使用 GoAccess。

https 2019-11-24T23:55:01.603141Z app/something.com 34.222.222.22:47121 190.61.18.156:80 0.008 0.252 0.000 200 200 191 725 "GET https://www.example.com:443/something.php HTTP/1.1" "Wget/1.18 (linux-gnu)" ECDHE-RSA-AES128-GCM-SHA256 TLSv1.2 arn:aws:elasticloadbalancing:eu-west-1:6474865788:targetgroup/mytargetgroup/be12345678 "Root=1-5ddb4567-149b7e874546754ed496" "www.example.com" "arn:aws:acm:eu-west-1:6474865788:certificate/pwdsw3455-4028-5cb7-854c-gdtr555" 0 2019-11-24T23:55:01.342000Z "waf,forward" "-" "-" "190.61.18.156:80" "200"

这将适用于您发布的行,但如果您的任何字段可以包含额外的空格,您可能希望使用不同的分隔符。

awk -F'[ ]' '=' access.log | goaccess - -a