From: Dobrica Pavlinusic Date: Thu, 26 Aug 2010 19:29:18 +0000 (+0000) Subject: move query generation into httpd code X-Git-Url: http://git.rot13.org/?p=pxelator;a=commitdiff_plain;h=424cb3ecd7b688f50914bb10dcb45e17f487dc71 move query generation into httpd code --- diff --git a/lib/PXElator/httpd.pm b/lib/PXElator/httpd.pm index 4e29397..3218391 100644 --- a/lib/PXElator/httpd.pm +++ b/lib/PXElator/httpd.pm @@ -295,7 +295,13 @@ warn "XXX pids = ", dump( $daemons::pids ); my $from_t = $param->{from_t}; - store::query( $from_t, sub { + my $q; + $q->{'package.time'} = { '$lt' => $from_t * 1 } if $from_t; +# $q->{'package.name'} = { '$ne' => 'syslogd' }; + $q->{'package.name'} = { '$ne' => 'dhcpd' }; +# $q->{'package.name'} = { '$ne' => [ 'dhcpd', 'dnsd' ] }; + $q->{'tag'} = { '$ne' => 'CRON' }; + store::query( $q, sub { my $o = shift; my $p = delete( $o->{package} ); delete( $o->{_id} ); diff --git a/lib/PXElator/store.pm b/lib/PXElator/store.pm index 5585f66..0f691eb 100644 --- a/lib/PXElator/store.pm +++ b/lib/PXElator/store.pm @@ -70,13 +70,9 @@ sub audit { sub query { - my ( $from_t, $callback ) = @_; - my $q; - $q->{'package.time'} = { '$lt' => $from_t * 1 } if $from_t; -# $q->{'package.name'} = { '$ne' => 'syslogd' }; - $q->{'tag'} = { '$ne' => 'CRON' }; + my ( $q, $callback ) = @_; warn "# query ", dump($q); - $audit->ensure_index({ 'package.name' => 1 }); + $audit->ensure_index({ $_ => 1 }) foreach keys %$q; my $cursor = $audit->query($q)->sort({ 'package.time' => -1 })->limit( 100 ); while( my $o = $cursor->next ) { $callback->( $o );