diff --git a/web/gui/src/main/webapp/app/view/topo/topoEvent.js b/web/gui/src/main/webapp/app/view/topo/topoEvent.js
index edebb52..10ed6df 100644
--- a/web/gui/src/main/webapp/app/view/topo/topoEvent.js
+++ b/web/gui/src/main/webapp/app/view/topo/topoEvent.js
@@ -58,14 +58,15 @@
         };
     }
 
-    var dispatcher = {
+    var nilApi = {},
+        dispatcher = {
         handleEvent: function (ev) {
             var eid = ev.event,
-                api = evApis[eid] || {},
+                api = evApis[eid] || nilApi,
                 eh = api[eid];
 
             if (eh) {
-                $log.debug('  *EVENT* ', eid, ev.payload);
+                $log.debug(' << *Rx* ', eid, ev.payload);
                 eh(ev.payload);
             } else {
                 $log.warn('Unknown event (ignored):', ev);
@@ -74,6 +75,7 @@
 
         sendEvent: function (evType, payload) {
             if (wsock) {
+                $log.debug(' *Tx* >> ', evType, payload);
                 wes.sendEvent(wsock, evType, payload);
             } else {
                 $log.warn('sendEvent: no websocket open:', evType, payload);
