diff options
Diffstat (limited to 'web/stream.gathering.org/fix_count.pl')
-rwxr-xr-x | web/stream.gathering.org/fix_count.pl | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/web/stream.gathering.org/fix_count.pl b/web/stream.gathering.org/fix_count.pl new file mode 100755 index 0000000..aaaf42e --- /dev/null +++ b/web/stream.gathering.org/fix_count.pl @@ -0,0 +1,31 @@ +#! /usr/bin/perl + +my $lines = {}; + +open LOG, "<", "/home/techserver/count_datacube.log" + or die "count_datacube.log: $!"; + +while (<LOG>) { + chomp; + my ($date, $port, $proto, $audience, $count) = split /\s+/; + my $key = $port . ' ' . $proto . ' ' . $audience; + $lines->{$date}{$key} = $count; +} + +close LOG; + +my $last_date = undef; +for my $date (sort keys %$lines) { + for my $key (keys %{$lines->{$date}}) { + if (defined($last_date) && !exists($lines->{$last_date}{$key})) { + $lines->{$last_date}{$key} = $lines->{$date}{$key}; + } + } + $last_date = $date; +} + +for my $date (sort keys %$lines) { + for my $key (sort keys %{$lines->{$date}}) { + print "$date $key " . $lines->{$date}{$key} . "\n"; + } +} |