]> www.average.org Git - loctrkd.git/blobdiff - gps303/common.py
Do not write startup message for command-line cmds
[loctrkd.git] / gps303 / common.py
index 09fb01f060c73c0f0821ec84947fb435fa1344da..8afd65edfd65bd6e5efcb4b8df8234d79bccdfd4 100644 (file)
@@ -2,26 +2,41 @@
 
 from configparser import ConfigParser
 from getopt import getopt
-from logging import getLogger, StreamHandler, DEBUG, INFO
+from logging import Formatter, getLogger, StreamHandler, DEBUG, INFO
 from logging.handlers import SysLogHandler
+from pkg_resources import get_distribution, DistributionNotFound
 from sys import argv, stderr, stdout
 
 CONF = "/etc/gps303.conf"
 PORT = 4303
 DBFN = "/var/lib/gps303/gps303.sqlite"
 
+try:
+    version = get_distribution("gps303").version
+except DistributionNotFound:
+    version = "<local>"
+
 
 def init(log, opts=None):
     if opts is None:
         opts, _ = getopt(argv[1:], "c:d")
     opts = dict(opts)
     conf = readconfig(opts["-c"] if "-c" in opts else CONF)
+    log.setLevel(DEBUG if "-d" in opts else INFO)
     if stdout.isatty():
-        log.addHandler(StreamHandler(stderr))
+        hdl = StreamHandler(stderr)
+        hdl.setFormatter(
+            Formatter("%(asctime)s - %(levelname)s - %(message)s")
+        )
+        log.addHandler(hdl)
+        log.debug("%s starting with options: %s", version, opts)
     else:
-        log.addHandler(SysLogHandler(address="/dev/log"))
-    log.setLevel(DEBUG if "-d" in opts else INFO)
-    log.info("starting with options: %s", opts)
+        hdl = SysLogHandler(address="/dev/log")
+        hdl.setFormatter(
+            Formatter("%(name)s[%(process)d]: %(levelname)s - %(message)s")
+        )
+        log.addHandler(hdl)
+        log.info("%s starting with options: %s", version, opts)
     return conf