aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'gentoo_ads/logging_setup.py')
-rw-r--r--gentoo_ads/logging_setup.py58
1 files changed, 58 insertions, 0 deletions
diff --git a/gentoo_ads/logging_setup.py b/gentoo_ads/logging_setup.py
new file mode 100644
index 0000000..a8ceef0
--- /dev/null
+++ b/gentoo_ads/logging_setup.py
@@ -0,0 +1,58 @@
+# -*- coding: utf-8 -*-
+import logging
+
+from logging.handlers import SysLogHandler
+
+LOGGING_DEBUG = True
+
+SYS_LOG_ADDRESS = '/dev/log'
+
+if not hasattr(logging, "set_up_done"):
+ logging.set_up_done=False
+
+def setup_logging():
+
+ if logging.set_up_done:
+ return
+
+
+ logger = logging.getLogger()
+ if LOGGING_DEBUG:
+ logger.setLevel(logging.DEBUG)
+ else:
+ logger.setLevel(logging.INFO)
+
+ formatter = logging.Formatter("[%(site_name)s] %(asctime)s %(levelname)s %(message)s")
+
+ # test console logger
+ if LOGGING_DEBUG:
+ handler = logging.StreamHandler()
+ handler.setLevel(logging.DEBUG)
+ handler.setFormatter(formatter)
+ logger.addHandler(handler)
+
+ # SysLogHandler
+ SysLogAddress = SYS_LOG_ADDRESS
+ if SysLogAddress is not None:
+ handler = SysLogHandler(SysLogAddress)
+ handler.setLevel(logging.INFO)
+ handler.setFormatter(formatter)
+ logger.addHandler(handler)
+
+ #########################
+ # LOGGING LEVELS
+ # * indicates a custom level
+ #
+ # CRITICAL 50
+ # ERROR 40
+ # WARNING 30
+ # INFO 20
+ # DEBUG 10
+ # NOTSET 0
+ #
+
+
+
+ logging.set_up_done=True
+
+setup_logging()