Ship It! LIVEShip It! LIVE
home about services writing contact

We develop, test, and create fine software products, and design creative solutions to your problems.
The development of software is an intrinsically creative process. We are dedicated to improving our mastery of the art.
Links · RSS Feed
Popular Pages

Jared Richardson’s talk titled “Build Teams, not Products,” in particular, was one of the best presentations I’ve ever witnessed. It was just one of those talks where all the points seem tautologic...
-Yev Bronshteyn
With much code, all eyes are shallow
-Jared Richardson
It's rare to have this much fun reading a book about software. The ideas are smart, relevant, and fundamental. I can be a better programmer today because of the things I read today.
-Joe Fair

Nginx Logging Format and Awstats (May 24)
When I set up my stats I looked around a few times for some examples and never found anything. I finally got mine working recently, so I posted my formats as much for my own reference as anyone else.

First, this web server is nginx. Changing the log format is trivial. My nginx.conf log_format block looks like this:

    log_format  main  '$remote_addr [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent"';


Then awstats has to consume the log. Of course it doesn't use the same configuration language, but it's not too bad. My awstats.conf looks like this:

LogFormat = "%host %time1 %methodurl %code %bytesd %referer" 


No rocket science here, but maybe it'll save you some time figuring it out for yourself. I haven't run this format long enough to be sure I won't add something to it. If I do, I'll update here.

Quick update, I forgot to add, to get nginx to re-read the config files on the fly, use this:
kill -HUP 1234
where 1234 is your pid. You can have nginx recreate the log files (if you've moved them during your debugging cycle) with
kill -USR1 1234

I pulled the quotes from the return code. doh!

Category: Misc


© 2007 Agile Artisans.