我希望解析存储在 S3 中的 AWS 负载均衡器日志文件,以按站点 URL www.example.com 而不是虚拟主机应用程序/内容.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'[ ]' '$3=$22$3' access.log | goaccess - -a