여기와 다른 곳에서 사물을 결합하여 unbuntu 12.04 및 centOS6에서 작동하는 것이 제가 생각해 낸 것입니다.
/etc/rsyslog.d/
.conf로 끝나는 파일을 만들고 다음 텍스트를 추가하십시오.
local6.* /var/log/my-logfile
다시 시작 rsyslog
, 다시로드가 새 로그 파일에 대해 작동하지 않는 것 같습니다. 아마도 기존 conf 파일 만 다시로드할까요?
sudo restart rsyslog
그런 다음이 테스트 프로그램을 사용하여 실제로 작동하는지 확인할 수 있습니다.
import logging, sys
from logging import config
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'verbose': {
'format': '%(levelname)s %(module)s P%(process)d T%(thread)d %(message)s'
},
},
'handlers': {
'stdout': {
'class': 'logging.StreamHandler',
'stream': sys.stdout,
'formatter': 'verbose',
},
'sys-logger6': {
'class': 'logging.handlers.SysLogHandler',
'address': '/dev/log',
'facility': "local6",
'formatter': 'verbose',
},
},
'loggers': {
'my-logger': {
'handlers': ['sys-logger6','stdout'],
'level': logging.DEBUG,
'propagate': True,
},
}
}
config.dictConfig(LOGGING)
logger = logging.getLogger("my-logger")
logger.debug("Debug")
logger.info("Info")
logger.warn("Warn")
logger.error("Error")
logger.critical("Critical")