From db6ebab86a4507d15ec0af57af6b0edfeabdf943 Mon Sep 17 00:00:00 2001 From: Amos Jeffries Date: Sun, 12 Jul 2009 15:32:39 +1200 Subject: [PATCH] Author: Adrian Chadd Add a simple script to summarise traffic use per user. And, summarise the user list accessing the proxy. Allows the user to override the aggregation term. By default its "username" but there are other options (eg try "clientip"). --- scripts/PerUser.pl | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 scripts/PerUser.pl diff --git a/scripts/PerUser.pl b/scripts/PerUser.pl new file mode 100644 index 0000000000..26d70a85e0 --- /dev/null +++ b/scripts/PerUser.pl @@ -0,0 +1,34 @@ +#!/usr/bin/perl -w + + +use strict; + +# This is a simple script that will summarise per-user traffic +# statistics. +# +# Adrian Chadd +# $Id: PerUser.pl,v 1.2 2007/01/24 08:03:52 adrian Exp $ + +use Squid::ParseLog; + +my %u; +my $wh; + +$wh = "username"; +if (scalar @ARGV >= 1) { + $wh = $ARGV[0]; + shift @ARGV; +} + +while (<>) { + chomp; + my $l = Squid::ParseLog::parse($_); + if (! defined $u{$l->{$wh}}) { + $u{$l->{$wh}}->{"traffic"} = 0; + } + $u{$l->{$wh}}->{"traffic"} += $l->{"size"}; +} + +foreach (keys %u) { + printf "%s\t\t%lu\n", $_, $u{$_}->{"traffic"}; +} -- 2.47.2