#!/usr/bin/perl
use warnings;
use strict;
use TimeSeries;

my $wanted_feed_id = shift;

my $current_feed_id = -1;
my @updates_in_interval;

my $ts = TimeSeries->new(style => 'impulses');
$ts->legend('old', 'new');
$ts->finalresolution(100);

my @files = glob("test.log*");
@files = sort { -M $b <=> -M $a } @files;

my $current;
my @updates;
for my $file (@files) {
    open my $fh, '<', $file;
    while (<$fh>) {

	if (/ Rss2Html.FeedList feed: (\d+) .*/) {
	    $current_feed_id = $1;
	}

	next unless $current_feed_id == $wanted_feed_id;

	if (/Rss2Html.FeedList [ ]
	     \d\d\d\d-\d\d-\d\d [ ] \w\w\w [ ] \d\d:\d\d:\d\d
	     [ ] \.\. [ ]
	     (\d\d\d\d-\d\d-\d\d) [ ] \w\w\w [ ] (\d\d:\d\d:\d\d)
	     : [ ]
	     (\d+) [ ] seconds
	    /x
	) {
	    $current = { time => "$1T$2", interval => $3 };
	}
	if (/Rss2Html.FeedList need to update/) {
	    push @updates, $current;
	}
	if (/Rss2Html.Feed item .* new/) {
	    $current->{new}++;
	}
    }
}

for (@updates) {
    $ts->add_timestring($_->{time},
                        $_->{new} ? (0,              $_->{interval})
			          : ($_->{interval}, 0             )
		       );
}
print $ts->plot;