From 94f6793f96e75292bdccf20e58e1769b992f4db2 Mon Sep 17 00:00:00 2001 From: Javier Sánchez Parra Date: Fri, 7 Oct 2022 15:07:57 +0200 Subject: log: declare samba handler only in live mode ogClient in linux mode only write its logs to syslog and the console. Also, raise exception if mode its not supported. --- src/log.py | 29 ++++++++++++++++++++--------- 1 file changed, 20 insertions(+), 9 deletions(-) diff --git a/src/log.py b/src/log.py index ef1fe71..cabe4d0 100644 --- a/src/log.py +++ b/src/log.py @@ -37,11 +37,6 @@ def _default_logging_linux(): 'formatter': 'formatter.syslog', 'address': '/dev/log', }, - 'samba': { - 'class': 'logging.FileHandler', - 'formatter': 'formatter.syslogtime', - 'filename': f'/opt/opengnsys/log/{getifaddr(os.getenv("DEVICE"))}.log', - }, }, 'loggers': { '': { @@ -53,6 +48,21 @@ def _default_logging_linux(): return logconfig +def _default_logging_live(): + from src.utils.net import getifaddr + logconfig = _default_logging_linux() + samba = { + 'samba': { + 'class': 'logging.FileHandler', + 'formatter': 'formatter.syslogtime', + 'filename': f'/opt/opengnsys/log/{getifaddr(os.getenv("DEVICE"))}.log', + } + } + logconfig['handlers'].update(samba) + logconfig['loggers']['']['handlers'].append('samba') + return logconfig + + def _default_logging_win(): logconfig = { 'version': 1, @@ -93,11 +103,12 @@ def configure_logging(mode, level): """ if mode == 'windows': logconfig = _default_logging_win() - else: + elif mode == 'linux': logconfig = _default_logging_linux() - - if mode == 'live': - logconfig['loggers']['']['handlers'].append('samba') + elif mode == 'live': + logconfig = _default_logging_live() + else: + raise ValueError(f'Error: Mode {mode} not supported') logconfig['loggers']['']['level'] = level -- cgit v1.2.3-18-g5258