Я пытаюсь войти в syslog (journald), используя имя модуля, потому что это значительно упрощает фильтрацию syslog. Я не могу найти ничего о настройке этих пользовательских полей / заголовков для syslog в документации.
code:
logger = logging.getLogger('my_app_name')
logger.setLevel(logging.INFO)
handler = logging.handlers.SysLogHandler(address = '/dev/log')
logger.addHandler(handler)
Отображение всех полей, на которые это похоже (используя journalctl -o json-pretty -n 1 _PID=15588
):
{
"__CURSOR" : "s=512b9c925305462da6896c8614e20c0e;i=23e3d;b=aa13b83bea5c4644ab322b7f9d16d821;m=77b51ad52;t=59debf36719b5;x=17f47446f37a8f14",
"__REALTIME_TIMESTAMP" : "1581011610048949",
"__MONOTONIC_TIMESTAMP" : "32133721426",
"_BOOT_ID" : "aa13b83bea5c4644ab322b7f9d16d821",
"PRIORITY" : "6",
"_SELINUX_CONTEXT" : "unconfined\n",
"_MACHINE_ID" : "82929df7ee394b73b81252fe3b4e5020",
"_HOSTNAME" : "NOTEBOOK",
"_UID" : "0",
"_GID" : "0",
"_TRANSPORT" : "syslog",
"_CAP_EFFECTIVE" : "3fffffffff",
"_SYSTEMD_OWNER_UID" : "1000",
"_SYSTEMD_SLICE" : "user-1000.slice",
"_SYSTEMD_USER_SLICE" : "-.slice",
"SYSLOG_FACILITY" : "1",
"_AUDIT_SESSION" : "1",
"_AUDIT_LOGINUID" : "1000",
"_SYSTEMD_UNIT" : "user@1000.service",
"_EXE" : "/usr/bin/python3.6",
"_SYSTEMD_CGROUP" : "/user.slice/user-1000.slice/user@1000.service/gnome-terminal-server.service",
"_SYSTEMD_USER_UNIT" : "gnome-terminal-server.service",
"_SYSTEMD_INVOCATION_ID" : "983bf3e1ecb9414eb64b396c45aa9a40",
"_COMM" : "python3",
"_CMDLINE" : "python3 backend.py",
"MESSAGE" : "blabla",
"_PID" : "15588",
"_SOURCE_REALTIME_TIMESTAMP" : "1581011610048938"
}
Можно ли установить эти пользовательские поля с помощью питонов logging.handler.SysLogHandler
? Как?