|
From: <buc...@us...> - 2012-08-03 10:32:08
|
Revision: 235
http://devmon.svn.sourceforge.net/devmon/?rev=235&view=rev
Author: buchanmilne
Date: 2012-08-03 10:32:02 +0000 (Fri, 03 Aug 2012)
Log Message:
-----------
Add debug logging of messages sent to xymond/bbd
Modified Paths:
--------------
trunk/modules/dm_msg.pm
Modified: trunk/modules/dm_msg.pm
===================================================================
--- trunk/modules/dm_msg.pm 2012-07-24 16:09:10 UTC (rev 234)
+++ trunk/modules/dm_msg.pm 2012-08-03 10:32:02 UTC (rev 235)
@@ -31,9 +31,11 @@
# Send our test results to the BB/Hobbit server
sub send_msgs {
$g{'msgxfrtime'} = time;
+ $g{'sentmsgsize'} = 0;
do_log('DEBUG MSG: running send_msgs()',1) if $g{'debug'};
- do_log('Sending messages to display server',1);
+ my $nummsg = scalar @{$g{'test_results'}};
+ do_log("Sending $nummsg messages to display server",1);
# Determine the address we are connecting to
my $host = $g{'dispserv'};
@@ -53,6 +55,7 @@
return;
}
+ my $msg_sent = 0;
do_log("DEBUG: Looping through messages for this socket",3) if $g{'debug'};
# Run until we are out of messages to send
SOCKLOOP: while(@{$g{'test_results'}}) {
@@ -103,6 +106,7 @@
MSGLOOP: while($msg_size < $g{'msgsize'}
and @{$g{'test_results'}}) {
my $msg = shift @{$g{'test_results'}};
+ $msg_sent++;
# Make sure this is a valid message
if(!defined $msg or $msg eq '') {
do_log("Error: dm_msg trying to send a blank message!",0);
@@ -115,12 +119,12 @@
# Nuts, this is a huge message, bigger than our msg size. Well want
# to send it by itself to minimize how much it gets truncated
if($msg_size == 0) {
- my $thismsgsize = length $msg;
+ $msg_size = length $msg;
# Okay, we are clear, send the message
eval {
local $SIG{ALRM} = sub { die "Printing message timed out\n" };
alarm 10;
- do_log("DEBUG: Printing single combo message size $thismsgsize",3) if $g{'debug'};
+ do_log("DEBUG: Printing single combo message ($msg_sent of $nummsg), size $msg_size",3) if $g{'debug'};
print SOCK "$msg\n";
do_log("DEBUG: Finished printing single combo message",3) if $g{'debug'};
alarm 0;
@@ -135,9 +139,12 @@
# Not an empty combo msg, wait till our new socket is open
else {
unshift @{$g{'test_results'}}, $msg;
+ $msg_sent--;
}
# Either way, open a new socket
+ $g{'sentmsgsize'} += $msg_size;
+ do_log("DEBUG: Closing socket, $msg_size sent",3) if $g{'debug'};
close SOCK;
next SOCKLOOP;
}
@@ -148,13 +155,17 @@
# Whoops, looks like it does; wait for the next socket
unshift @{$g{'test_results'}}, $msg;
+ $msg_sent--;
+ $g{'sentmsgsize'} += $msg_size;
+ do_log("DEBUG: Closing socket, $msg_size sent",3) if $g{'debug'};
close SOCK;
next SOCKLOOP;
}
# Looks good, print the msg
else {
- do_log("DEBUG: Printing combo message with multiple messages",3) if $g{'debug'};
+ my $thismsgsize = length $msg;
+ do_log("DEBUG: Printing message ($msg_sent of $nummsg), size $thismsgsize to existing combo",3) if $g{'debug'};
eval {
local $SIG{ALRM} = sub { die "Printing message timed out\n" };
alarm 10;
@@ -167,11 +178,13 @@
return;
}
$msg_size += length $msg;
- do_log("DEBUG: Finished printing combo message with multiple messages",3) if $g{'debug'};
+ do_log("DEBUG: Finished printing message to existing combo ($msg_size so far)",3) if $g{'debug'};
}
} # End MSGLOOP
+ $g{'sentmsgsize'} += $msg_size;
+ do_log("DEBUG: Closing socket, $msg_size sent",3) if $g{'debug'};
close SOCK;
} # END SOCKLOOP
@@ -180,8 +193,9 @@
# Now send our dm status message!
if(!$g{'print_msg'}) {
- do_log("DEBUG: Connecting and sending dm message",3) if $g{'debug'};
my $dm_msg = dm_stat_msg();
+ my $msgsize = length $dm_msg;
+ do_log("DEBUG: Connecting and sending dm message ($msgsize)",3) if $g{'debug'};
eval {
local $SIG{ALRM} = sub { die "Connecting and sending dm message timed out\n" };
alarm 10;
@@ -234,6 +248,7 @@
"SNMP test time: $g{'snmppolltime'}\n" .
"Test logic time: $g{'testtime'}\n" .
"BB msg xfer time: $g{'msgxfrtime'}\n" .
+ "BB msg xfer size: $g{'sentmsgsize'}\n" .
"This poll period: $this_poll_time\n" .
"\n" .
"Avg poll time: ";
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|