[LON-CAPA-cvs] cvs: loncom / loncnew

foxr lon-capa-cvs@mail.lon-capa.org
Tue, 29 Jul 2003 02:33:05 -0000


foxr		Mon Jul 28 22:33:05 2003 EDT

  Modified files:              
    /loncom	loncnew 
  Log:
  Add SIGINT processing to child processes to toggle annoying trace mode
  on/off.. will try to use this to isolate the compute boud process issue.
  
  
  
Index: loncom/loncnew
diff -u loncom/loncnew:1.15 loncom/loncnew:1.16
--- loncom/loncnew:1.15	Mon Jul 14 22:07:05 2003
+++ loncom/loncnew	Mon Jul 28 22:33:05 2003
@@ -2,7 +2,7 @@
 # The LearningOnline Network with CAPA
 # lonc maintains the connections to remote computers
 #
-# $Id: loncnew,v 1.15 2003/07/15 02:07:05 foxr Exp $
+# $Id: loncnew,v 1.16 2003/07/29 02:33:05 foxr Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -46,6 +46,10 @@
 
 # Change log:
 #    $Log: loncnew,v $
+#    Revision 1.16  2003/07/29 02:33:05  foxr
+#    Add SIGINT processing to child processes to toggle annoying trace mode
+#    on/off.. will try to use this to isolate the compute boud process issue.
+#
 #    Revision 1.15  2003/07/15 02:07:05  foxr
 #    Added code for lonc/lond transaction timeouts.  Who knows if it works right.
 #    The intent is for a timeout to fail any transaction in progress and kill
@@ -125,6 +129,7 @@
 my $ClientConnection = 0;	# Uniquifier for client events.
 
 my $DebugLevel = 0;
+my $NextDebugLevel= 10;		# So Sigint can toggle this.
 my $IdleTimeout= 3600;		# Wait an hour before pruning connections.
 
 #
@@ -261,7 +266,7 @@
     my $level   = shift;
     my $message = shift;
     if ($level <= $DebugLevel) {
-	print $message." host = ".$RemoteHost."\n";
+	Log("INFO", "-Debug- $message host = $RemotHost");
     }
 }
 
@@ -1368,6 +1373,22 @@
     exit 0;
 
 }
+
+=head2 ToggleDebug
+
+This sub toggles trace debugging on and off.
+
+=cut
+
+sub ToggleDebug {
+    my $Current    = $DebugLevel;
+       $DebugLevel = $NextDebugLevel;
+       $NextDebugLevel = $Current;
+
+    Log("SUCCESS", "New debugging level for $RemoteHost now $DebugLevel");
+
+}
+
 =head2 ChildProcess
 
 This sub implements a child process for a single lonc daemon.
@@ -1380,12 +1401,6 @@
     #
     #  Signals must be handled by the Event framework...
 #
-#    $SIG{QUIT}  = \&SignalledToDeath;
-#    $SIG{HUP}   = \&ChildStatus;
-#    $SIG{USR1}  = IGNORE;
-#    $SIG{INT}   = DEFAULT;
-#    $SIG{CHLD}  = IGNORE;
-#    $SIG{__DIE__}  = \&SignalledToDeath;
 
     Event->signal(signal   => "QUIT",
 		  cb       => \&SignalledToDeath,
@@ -1396,6 +1411,9 @@
     Event->signal(signal   => "USR1",
 		  cb       => \&ChildStatus,
 		  data     => "USR1");
+    Event->signal(signal   => "INT",
+		  cb       => \&ToggleDebug,
+		  data     => "INT");
 
     SetupTimer();