Menyatukan semuanya dari sini dan tempat lain, inilah yang saya dapatkan yang berfungsi pada unbuntu 12.04 dan centOS6
Buat file /etc/rsyslog.d/
yang diakhiri dengan .conf dan tambahkan teks berikut
local6.* /var/log/my-logfile
Mulai ulang rsyslog
, memuat ulang sepertinya TIDAK berfungsi untuk file log baru. Mungkin hanya memuat ulang file conf yang ada?
sudo restart rsyslog
Kemudian Anda dapat menggunakan program uji ini untuk memastikan program itu benar-benar berfungsi.
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")