aboutsummaryrefslogtreecommitdiffstats
path: root/web/api/read/oplog
blob: 88a7616e93e9843f5a547978eaa29e9c58edf4e4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#! /usr/bin/perl
# vim:ts=8:sw=8

use lib '/opt/gondul/include';
use nms::web;
use strict;
use warnings;

my $filter = '';

if (defined($get_params{'now'})) {
	$filter = "where time < timestamp with time zone 'epoch' + " . db_safe_quote('now') . " * INTERVAL '1 second' ";
}
my $query = $nms::web::dbh->prepare('select id,date_trunc(\'second\',time) as timestamp,extract(hour from time) as h, extract(minute from time) as m,systems,username,log from oplog ' 
        . $filter . 
'order by id desc;');
$query->execute();
while (my $ref = $query->fetchrow_hashref()) {
	my %meh;
	$meh{'time'} = $ref->{'h'} . ":" . $ref->{'m'};
	$meh{'log'} = $ref->{'log'};
	$meh{'username'} = $ref->{'username'};
	$meh{'id'} = $ref->{'id'};
	$meh{'systems'} = $ref->{'systems'};
	$meh{'timestamp'} = $ref->{'timestamp'};
	$meh{'timestamp'} =~ s/ /T/;
	$meh{'timestamp'} =~ s/\+00$/Z/;
	$meh{'timestamp'} =~ s/\+(\d\d)$/+$1:00/;

	push @{$nms::web::json{'oplog'}},\%meh;
}

nms::web::finalize_output();