better logging
[svn42.git] / go / r3-eventbroker_zmq / logging.go
diff --git a/go/r3-eventbroker_zmq/logging.go b/go/r3-eventbroker_zmq/logging.go
new file mode 100644 (file)
index 0000000..0c0cd40
--- /dev/null
@@ -0,0 +1,30 @@
+// (c) Bernhard Tittelbach, 2013
+
+package main
+
+import "os"
+import "log"
+import "log/syslog"
+
+type NullWriter struct {}
+func (n *NullWriter) Write(p []byte) (int, error) {return len(p),nil}
+
+var (
+    Syslog_ *log.Logger
+    Debug_ *log.Logger
+)
+
+func init() {
+    Syslog_ = log.New(os.Stdout, "", log.LstdFlags)
+    Debug_ = log.New(&NullWriter{}, "", 0)
+}
+
+func LogEnableSyslog() {
+    var logerr error
+    Syslog_, logerr = syslog.NewLogger(syslog.LOG_INFO | (18<<3), 0)
+    if logerr != nil { panic(logerr) }
+}
+
+func LogEnableDebuglog() {
+    Debug_ = log.New(os.Stderr, "DEBUG", log.LstdFlags)
+}
\ No newline at end of file