mirror of https://git.48k.eu/ogclient
log: import fcntl only on linux
Otherwise, ogClient do not work on Windows because fcntl module do not exists on Windows.more_events
parent
3703fd6063
commit
f1fff0b0b6
146
src/log.py
146
src/log.py
|
@ -2,79 +2,85 @@ import logging
|
|||
import logging.config
|
||||
import os
|
||||
|
||||
from src.utils.net import getifaddr
|
||||
|
||||
DEFAULT_LOGGING_LINUX = {
|
||||
'version': 1,
|
||||
'disable_existing_loggers': False,
|
||||
'formatters': {
|
||||
'formatter.syslog': {
|
||||
'()': 'logging.Formatter',
|
||||
'format': 'ogClient: [{levelname}] - {message}',
|
||||
'style': '{',
|
||||
def _default_logging_linux():
|
||||
from src.utils.net import getifaddr
|
||||
logconfig = {
|
||||
'version': 1,
|
||||
'disable_existing_loggers': False,
|
||||
'formatters': {
|
||||
'formatter.syslog': {
|
||||
'()': 'logging.Formatter',
|
||||
'format': 'ogClient: [{levelname}] - {message}',
|
||||
'style': '{',
|
||||
},
|
||||
'formatter.console': {
|
||||
'()': 'logging.Formatter',
|
||||
'format': '[{levelname}] - {message}',
|
||||
'style': '{',
|
||||
},
|
||||
'formatter.syslogtime': {
|
||||
'()': 'logging.Formatter',
|
||||
'datefmt': '%Y-%m-%d %H:%M:%S',
|
||||
'format': '({asctime}) ogClient: [{levelname}] - {message}',
|
||||
'style': '{',
|
||||
},
|
||||
},
|
||||
'formatter.console': {
|
||||
'()': 'logging.Formatter',
|
||||
'format': '[{levelname}] - {message}',
|
||||
'style': '{',
|
||||
'handlers': {
|
||||
'console': {
|
||||
'class': 'logging.StreamHandler',
|
||||
'formatter': 'formatter.console',
|
||||
'stream': 'ext://sys.stdout',
|
||||
},
|
||||
'syslog': {
|
||||
'class': 'logging.handlers.SysLogHandler',
|
||||
'formatter': 'formatter.syslog',
|
||||
'address': '/dev/log',
|
||||
},
|
||||
'samba': {
|
||||
'class': 'logging.FileHandler',
|
||||
'formatter': 'formatter.syslogtime',
|
||||
'filename': f'/opt/opengnsys/log/{getifaddr(os.getenv("DEVICE"))}.log',
|
||||
},
|
||||
},
|
||||
'formatter.syslogtime': {
|
||||
'()': 'logging.Formatter',
|
||||
'datefmt': '%Y-%m-%d %H:%M:%S',
|
||||
'format': '({asctime}) ogClient: [{levelname}] - {message}',
|
||||
'style': '{',
|
||||
},
|
||||
},
|
||||
'handlers': {
|
||||
'console': {
|
||||
'class': 'logging.StreamHandler',
|
||||
'formatter': 'formatter.console',
|
||||
'stream': 'ext://sys.stdout',
|
||||
},
|
||||
'syslog': {
|
||||
'class': 'logging.handlers.SysLogHandler',
|
||||
'formatter': 'formatter.syslog',
|
||||
'address': '/dev/log',
|
||||
},
|
||||
'samba': {
|
||||
'class': 'logging.FileHandler',
|
||||
'formatter': 'formatter.syslogtime',
|
||||
'filename': f'/opt/opengnsys/log/{getifaddr(os.getenv("DEVICE"))}.log',
|
||||
},
|
||||
},
|
||||
'loggers': {
|
||||
'': {
|
||||
'handlers': ['syslog', 'console'],
|
||||
'level': 'INFO',
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
DEFAULT_LOGGING_WIN = {
|
||||
'version': 1,
|
||||
'disable_existing_loggers': False,
|
||||
'formatters': {
|
||||
'formatter.console': {
|
||||
'()': 'logging.Formatter',
|
||||
'format': 'ogClient: [{levelname}] - {message}',
|
||||
'style': '{',
|
||||
'loggers': {
|
||||
'': {
|
||||
'handlers': ['syslog', 'console'],
|
||||
'level': 'INFO',
|
||||
},
|
||||
}
|
||||
},
|
||||
'handlers': {
|
||||
'console': {
|
||||
'level': 'DEBUG',
|
||||
'class': 'logging.StreamHandler',
|
||||
'formatter': 'formatter.console',
|
||||
'stream': 'ext://sys.stdout',
|
||||
},
|
||||
},
|
||||
'loggers': {
|
||||
'': {
|
||||
'handlers': ['console'],
|
||||
'level': 'DEBUG',
|
||||
},
|
||||
}
|
||||
}
|
||||
return logconfig
|
||||
|
||||
|
||||
def _default_logging_win():
|
||||
logconfig = {
|
||||
'version': 1,
|
||||
'disable_existing_loggers': False,
|
||||
'formatters': {
|
||||
'formatter.console': {
|
||||
'()': 'logging.Formatter',
|
||||
'format': 'ogClient: [{levelname}] - {message}',
|
||||
'style': '{',
|
||||
}
|
||||
},
|
||||
'handlers': {
|
||||
'console': {
|
||||
'level': 'DEBUG',
|
||||
'class': 'logging.StreamHandler',
|
||||
'formatter': 'formatter.console',
|
||||
'stream': 'ext://sys.stdout',
|
||||
},
|
||||
},
|
||||
'loggers': {
|
||||
'': {
|
||||
'handlers': ['console'],
|
||||
'level': 'DEBUG',
|
||||
},
|
||||
}
|
||||
}
|
||||
return logconfig
|
||||
|
||||
|
||||
def configure_logging(mode, level):
|
||||
"""
|
||||
|
@ -86,9 +92,9 @@ def configure_logging(mode, level):
|
|||
logging to the expected samba shared log file ({ip}.txt.log).
|
||||
"""
|
||||
if mode == 'windows':
|
||||
logconfig = DEFAULT_LOGGING_WIN
|
||||
logconfig = _default_logging_win()
|
||||
else:
|
||||
logconfig = DEFAULT_LOGGING_LINUX
|
||||
logconfig = _default_logging_linux()
|
||||
|
||||
if mode == 'live':
|
||||
logconfig['loggers']['']['handlers'].append('samba')
|
||||
|
|
Loading…
Reference in New Issue