1

I need a way to extract bandwidth usage logs for Apache virtual hosts. I see that a lot of people are recommending AWStats (and similar programs), but I don't need a graphical interface. All I need is usage data formatted in way that can be accessed by our billing program.

Something like this would be glorious:

<usage host="foo.com">
    <usage year="2009" month="2" bytes_in="12345" bytes_out="1235678" />
    ...
</usage>

It doesn't have to be xml, as long as it's fairly easy to parse and extract the vital information.

Kimble
  • 183
  • 1
  • 6

2 Answers2

3

I've used the mod_cband for that in the past. Its primary goal is to limit the bandwidth per vhost, but it can also log and graph them easily.

raphink
  • 11,987
  • 6
  • 37
  • 48
2

If you are using apache 2+ you can use modlogio's and %I or %O in LogFormat directive

config will be something like this:

LogFormat "%v %t %I %O" billing customLog /var/log/billing.log billing

then you can use awk or perl or whatever to aggregate the data in billing log and generate the reports

Aleksandar Ivanisevic
  • 3,377
  • 21
  • 24