add consistency=any to influx requests
[gnt-info] / gnt-monitor
index a50d4c1..3b43a95 100755 (executable)
@@ -6,7 +6,7 @@ use POSIX;
 use Time::HiRes qw(time sleep);
 
 my $DEBUG = $ENV{DEBUG} || 0;
-my $INFLUX = $ENV{INFLUX} || 'http://10.80.3.89:8086/write?db=gnt';
+my $INFLUX = $ENV{INFLUX} || 'http://10.80.3.89:8086/write?consistency=any&db=gnt';
 my $INTERVAL = $ENV{INTERVAL} || 1;
 my $DC = $ENV{DC};
 my $RACK = $ENV{RACK};
@@ -168,27 +168,29 @@ foreach my $instance ( keys %$stat ) {
 
        next if $skip->{$instance};
 
-       print $fh qq{cpu,node=$node,instance=$instance$location cpu=$stat->{$instance}->{cpu},ticks=$stat->{$instance}->{ticks} $t\n};
+       print $fh qq{ganeti_cpu,node=$node,instance=$instance$location cpu=$stat->{$instance}->{cpu},ticks=$stat->{$instance}->{ticks} $t\n};
 
        foreach my $disk ( @{ $stat->{$instance}->{disk} } ) {
-               print $fh qq{disk,node=$node,instance=$instance$location },dump4influx( $disk ), " $t\n";
+               print $fh qq{ganeti_disk,node=$node,instance=$instance$location },dump4influx( $disk ), " $t\n";
        }
 
        foreach my $nic ( @{ $stat->{$instance}->{nic} } ) {
                my $vlan = delete $nic->{vlan};
-               print $fh qq{nic,node=$node,instance=$instance,vlan=${vlan}$location },dump4influx( $nic ), " $t\n";
+               $vlan = 0 unless defined $vlan;
+               print $fh qq{ganeti_nic,node=$node,instance=$instance,vlan=${vlan}$location },dump4influx( $nic ), " $t\n";
        }
 
 }
 
 close($fh);
 
-if ( system( 'curl', '-XPOST', $INFLUX, '--data-binary', '@/dev/shm/gnt-monitor.influx' ) == 0 ) {
+if ( system( 'curl', '-s', '-XPOST', $INFLUX, '--data-binary', '@/dev/shm/gnt-monitor.influx' ) == 0 ) {
 } else {
        rename '/dev/shm/gnt-monitor.influx', '/dev/shm/gnt-monitor.influx.bug.' . scalar glob '/dev/shm/gnt-monitor.influx.bug.*';
        warn "curl failed: $? $!";
 }
 
-sleep $INTERVAL - (time() - $begin_t);
+my $dt = time() - $begin_t;
+sleep $INTERVAL - $dt if $dt > 0 && $dt < $INTERVAL;
 } #/while