我需要一种方法来提取Apache虚拟主机的带宽使用情况日志。 我看到很多人都在推荐AWStats(和类似的程序),但是我不需要graphics界面。 我所需要的是使用数据格式,可以通过我们的计费程序访问。
像这样的东西将是光荣的 :
<usage host="foo.com"> <usage year="2009" month="2" bytes_in="12345" bytes_out="1235678" /> ... </usage>
它不一定是xml,只要parsing和提取重要信息是相当容易的。
如果您使用的是Apache 2+,则可以在LogFormat指令中使用modlogio和%I或%O
configuration将是这样的:
LogFormat“%v%t%I%O”帐单customLog /var/log/billing.log帐单
那么你可以使用awk或者perl或者其他方式来聚合计费日志中的数据并生成报告
我以前用过mod_cband 。 它的主要目标是限制每个虚拟主机的带宽,但也可以轻松地logging和绘制它们。