我尝试使用以下命令解析Apache错误日志:
sudo tail -f /var/log/apache2/error.log | awk '$8 ~ /(400|500)/ {print $6}'
我试图仅查看400错误或500错误。但是当我运行那个ssh命令时,它并没有返回任何东西。换句话说,屏幕上不显示任何内容。
为了记录,我试图将我的浏览器指向一个伪造的URL页面,以便它产生400错误/ 500错误。
我错过了什么吗?
答案 0 :(得分:0)
您正在阅读的日志文件是错误的,或者您的awk脚本是错误的。试试这个
sudo tail -f /var/log/apache2/error.log | grep GET
这将告诉您实际是否有GET
次请求。然后尝试
cat /usr/local/var/log/apache2/access_log | awk '{print $7}'
在普通的apache框中,这将打印请求URL。如果这是打印任何你知道你有一个工作日志。然后使用此
cat ..../access_log | awk '{print $9}'| egrep "(400|500)"
查看带有错误的请求。注意。我通常只使用awk来拆分分隔符,因为事情变得更复杂,我使用更多的管道然后是Perl。