fix in sql schema - for f37/pgsql14 (2) : will no longer work in f35/pgsql13 though
[plcapi.git] / PLC / Logger.py
index ca85ac9..6102972 100644 (file)
@@ -1,28 +1,40 @@
+# pylint: disable=c0103
+
+import os
 import logging
 import logging.config
 
 # we essentially need one all-purpose logger
 # that goes into /var/log/plcapi.log
 
+# for debugging
+global_filename = "/var/log/plcapi.log"
+if 'PLCAPILOG' in os.environ:
+    global_filename = os.environ['PLCAPILOG']
+else:
+    try:
+        with open(global_filename, 'a') as just_checking:
+            pass
+    except OSError:
+        global_filename = "/tmp/plcapi.log"
+
 plcapi_logging_config = {
-    'version' : 1,
-    'disable_existing_loggers' : True,
-    'formatters': { 
-        'standard': { 
-            'format': '%(asctime)s %(levelname)s %(filename)s:%(lineno)d %(message)s',
-            'datefmt': '%m-%d %H:%M:%S'
-        },
-        'shorter': { 
-            'format': '%(asctime)s %(levelname)s %(message)s',
-            'datefmt': '%d %H:%M:%S'
+    'version': 1,
+    # IMPORTANT: we may be imported by something else, like sfa, so:
+    'disable_existing_loggers': False,
+    'formatters': {
+        'standard': {
+            'datefmt': '%m-%d %H:%M:%S',
+            'format': ('%(asctime)s %(levelname)s '
+                       '%(filename)s:%(lineno)d %(message)s'),
         },
     },
     'handlers': {
         'plcapi': {
+            'filename': global_filename,
             'level': 'INFO',
             'class': 'logging.FileHandler',
             'formatter': 'standard',
-            'filename' : '/var/log/plcapi.log',
         },
     },
     'loggers': {