-
-
Notifications
You must be signed in to change notification settings - Fork 5
License
seattlerb/production_log_analyzer
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
= production_log_analyzer * http://seattlerb.rubyforge.org/production_log_analyzer * http://rubyforge.org/projects/seattlerb == DESCRIPTION production_log_analyzer lets you find out which actions on a Rails site are slowing you down. Bug reports: http://rubyforge.org/tracker/?func=add&group_id=1513&atid=5921 == About production_log_analyzer provides three tools to analyze log files created by SyslogLogger. pl_analyze for getting daily reports, action_grep for pulling log lines for a single action and action_errors to summarize errors with counts. The analyzer currently requires the use of SyslogLogger because the default Logger doesn't give any way to associate lines logged to a request. The PL Analyzer also includes action_grep which lets you grab lines from a log that only match a single action. action_grep RssController#uber /var/log/production.log == Installing sudo gem install production_log_analyzer === Setup First: Set up SyslogLogger according to the instructions here: http://seattlerb.rubyforge.org/SyslogLogger/ Then: Set up a cronjob (or something like that) to run log files through pl_analyze. == Using pl_analyze To run pl_analyze simply give it the name of a log file to analyze. pl_analyze /var/log/production.log If you want, you can run it from a cron something like this: /usr/bin/gzip -dc /var/log/production.log.0.gz | /usr/local/bin/pl_analyze /dev/stdin Or, have pl_analyze email you (which is preferred, because tabs get preserved): /usr/bin/gzip -dc /var/log/production.log.0.gz | /usr/local/bin/pl_analyze /dev/stdin -e [email protected] -s "pl_analyze for `date -v-1d "+%D"`" In the future, pl_analyze will be able to read from STDIN. == Sample output Request Times Summary: Count Avg Std Dev Min Max ALL REQUESTS: 11 0.576 0.508 0.000 1.470 ThingsController#view: 3 0.716 0.387 0.396 1.260 TeamsController#progress: 2 0.841 0.629 0.212 1.470 RssController#uber: 2 0.035 0.000 0.035 0.035 PeopleController#progress: 2 0.489 0.489 0.000 0.977 PeopleController#view: 2 0.731 0.371 0.360 1.102 Average Request Time: 0.634 Request Time Std Dev: 0.498 Slowest Request Times: TeamsController#progress took 1.470s ThingsController#view took 1.260s PeopleController#view took 1.102s PeopleController#progress took 0.977s ThingsController#view took 0.492s ThingsController#view took 0.396s PeopleController#view took 0.360s TeamsController#progress took 0.212s RssController#uber took 0.035s RssController#uber took 0.035s ------------------------------------------------------------------------ DB Times Summary: Count Avg Std Dev Min Max ALL REQUESTS: 11 0.366 0.393 0.000 1.144 ThingsController#view: 3 0.403 0.362 0.122 0.914 TeamsController#progress: 2 0.646 0.497 0.149 1.144 RssController#uber: 2 0.008 0.000 0.008 0.008 PeopleController#progress: 2 0.415 0.415 0.000 0.830 PeopleController#view: 2 0.338 0.149 0.189 0.486 Average DB Time: 0.402 DB Time Std Dev: 0.394 Slowest Total DB Times: TeamsController#progress took 1.144s ThingsController#view took 0.914s PeopleController#progress took 0.830s PeopleController#view took 0.486s PeopleController#view took 0.189s ThingsController#view took 0.173s TeamsController#progress took 0.149s ThingsController#view took 0.122s RssController#uber took 0.008s RssController#uber took 0.008s ------------------------------------------------------------------------ Render Times Summary: Count Avg Std Dev Min Max ALL REQUESTS: 11 0.219 0.253 0.000 0.695 ThingsController#view: 3 0.270 0.171 0.108 0.506 TeamsController#progress: 2 0.000 0.000 0.000 0.000 RssController#uber: 2 0.012 0.000 0.012 0.012 PeopleController#progress: 2 0.302 0.302 0.000 0.604 PeopleController#view: 2 0.487 0.209 0.278 0.695 Average Render Time: 0.302 Render Time Std Dev: 0.251 Slowest Total Render Times: PeopleController#view took 0.695s PeopleController#progress took 0.604s ThingsController#view took 0.506s PeopleController#view took 0.278s ThingsController#view took 0.197s ThingsController#view took 0.108s RssController#uber took 0.012s RssController#uber took 0.012s TeamsController#progress took 0.000s TeamsController#progress took 0.000s == What's missing * More reports * Command line arguments including: * Help * What type of log file you've got (if somebody sends patches with tests) * Read from STDIN
About
No description, website, or topics provided.
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published