rails log(passenger log)
$ gem install request-log-analyzer
简单用法: 分析一个文件,并且把它输出到 report-for-logs.html 中:
$ request-log-analyzer cms_production_2013-02-17.log --format rails3 --output HTML --file report-for-cms-logs.html
nginx log
$ brew install goaccess
cd usr/local/Cellar/goaccess
进去找到etc/goaccess.conf
就是依次根据 nginx 的格式,打开下面的注释:
time-format %H:%M:%S
date-format %d/%b/%Y
log-format %h %^[%d:%t %^] "%r" %s %b "%R" "%u"
$ goaccess -f <your_log_file> -a > result.html
就可以看到对应的日志的细节了.
ps :
要确保你的电脑内存大小大于日志:
分析大日志时,如果你的机器内存太小,就会报错退出。例如,你的机器是4G内存,但是要分析的内容是7G大小,这时候就会 在机器运行2,3分钟,接近死机是,出现 Killed 的结果(还好GoAccess会自动 干掉这个进程 ) ( but it’s a weakpoint that goaccess can’t analyze big file, e.g. 7G size. )
所以解决办法是: 1. 把大日志切成小文件。 2. 分析小文件。
$ split -b 2G <your_log_file>
$ goaccess… 略