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.
more_events
Javier Sánchez Parra 2022-10-07 15:07:57 +02:00
parent f1fff0b0b6
commit 94f6793f96
1 changed files with 20 additions and 9 deletions

View File

@ -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