chiark / gitweb /
time logging feature for multiplex
authorian <ian>
Sun, 15 Mar 2009 20:00:13 +0000 (20:00 +0000)
committerian <ian>
Sun, 15 Mar 2009 20:00:13 +0000 (20:00 +0000)
hostside/multiplex

index c3e826271efa5f18b840db8a00c015db931f9d91..8ee583212432912b59a736e96f30ad0991159936 100755 (executable)
@@ -95,8 +95,11 @@ proc lputs {m} {
     puts $m
 }
 
-proc xmit-relevantly {m} {
+proc xmit-relevantly {m {tlog 0}} {
     global executing currentconn conns
+    if {$tlog} {
+       puts "@[clock format [clock seconds] -format {%Y-%m-%d %T %Z}] $m"
+    }
     if {$executing} {
        puts "<* $m"
        set myconn $currentconn
@@ -116,11 +119,11 @@ proc xmit-relevantly {m} {
     }
 }
 
-proc xmit-relevantly-savereplay {pri key rhs} {
+proc xmit-relevantly-savereplay {pri key rhs {tlog 0}} {
     set pk "$pri $key"
     upvar #0 replay($pk) rep
     set rep $rhs
-    xmit-relevantly "$key $rhs"
+    xmit-relevantly "$key $rhs" $tlog
 }
 
 proc savereplay-clear {pk} {
@@ -180,7 +183,7 @@ proc save-dump {} {
            }
        }
     }
-    xmit-relevantly-savereplay 42 "info save-dump" "$dumpdir"
+    xmit-relevantly-savereplay 42 "info save-dump" "$dumpdir" 1
 }
 
 #---------- multiplexer-implemented command ----------
@@ -672,6 +675,7 @@ proc realtime-inputline {dummy l} {
     }
 
     lputs "<< $l"
+    set tlog 0
 
     if {[regexp {^(detect (\w+)) ([01])$} $l dummy key seg value]} {
        upvar #0 detect0($seg) d0
@@ -695,7 +699,7 @@ proc realtime-inputline {dummy l} {
            }
        }
        set pri 10
-       puts "@[clock format [clock seconds] -format {%Y-%m-%d %T %Z}] $l"
+       set tlog 1
     } elseif {[regexp {^(resolution) (.*)$} $l dummy key addvalue]} {
        set pri 50
     } elseif {[regexp {^(picio out) (on|off)$} $l dummy key value]} {
@@ -724,7 +728,7 @@ proc realtime-inputline {dummy l} {
        }
     }
 
-    xmit-relevantly $l
+    xmit-relevantly $l $tlog
 
     switch -regexp -- $l {
        {^ack\s|^nak\s} {