Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

UNIX syslog 라이브러리 루틴에 대한 Python 인터페이스

<시간/>

UNIX syslog 라이브러리 정보를 얻으려면 syslog 모듈을 프로그램에 사용해야 합니다. 이 모듈에는 syslog 라이브러리에 대한 다른 모듈이 있는 syslog가 있습니다.

이 모듈을 사용하려면 −

를 사용하여 가져와야 합니다.
import syslog

방법은 아래와 같습니다 -

메소드 syslog.syslog(메시지) 또는 syslog.syslog(우선순위, 메시지)

이 메서드는 문자열 형식 메시지를 시스템 로거에 보내는 데 사용됩니다. 각 메시지에는 우선 순위가 있습니다. 우선 순위 인수는 주어진 메시지의 우선 순위를 설정하는 데 사용할 수 있습니다.

메서드 syslog.openlog([ident[, logooption[, Facility]]])

이 방법은 후속 syslog 호출의 로깅 옵션에 사용됩니다. ident 인수는 문자열 유형 인수입니다. 모든 메시지에 대해 가장합니다.

syslog.closelog() 메소드

이 방법은 syslog 모듈을 재설정하는 데 사용됩니다. 모듈을 가져오면 이 모듈이 해당 상태로 바뀝니다.

메서드 syslog.setlogmask(maskpri)

이 메서드는 우선 순위 마스크를 maskpri로 설정하는 데 사용되며 이전 마스크 값을 반환합니다. 우선순위가 없을 경우 maskpri는 무시됩니다.

예시 코드

import syslog, sys
syslog.openlog(sys.argv[0])
syslog.syslog(syslog.LOG_NOTICE, "This is a Log Notice")
syslog.openlog()

출력

$ python3 posix_example.py
$ sudo cat /var/log/syslog
Oct  7 00:05:23 unix_user-VirtualBox anacron[14271]: Job `cron.daily' terminated
Oct  7 00:05:23 unix_user-VirtualBox anacron[14271]: Normal exit (1 job run)
Oct  7 00:17:01 unix_user-VirtualBox CRON[14396]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Oct  7 00:22:35 unix_user-VirtualBox gnome-software[1599]: no app for changed ubuntu-dock@ubuntu.com
Oct  7 00:22:35 unix_user-VirtualBox gnome-software[1599]: no app for changed ubuntu-appindicators@ubuntu.com
Oct  7 00:22:36 unix_user-VirtualBox gnome-shell[1296]: [AppIndicatorSupport-DEBUG] Registering StatusNotifierItem :1.59/org/ayatana/NotificationItem/software_update_available
Oct  7 00:22:37 unix_user-VirtualBox gvfsd-metadata[3664]: g_udev_device_has_property: assertion 'G_UDEV_IS_DEVICE (device)' failed
Oct  7 00:22:37 unix_user-VirtualBox gvfsd-metadata[3664]: g_udev_device_has_property: assertion 'G_UDEV_IS_DEVICE (device)' failed
Oct  7 00:25:47 unix_user-VirtualBox snapd[5511]: storehelpers.go:398: cannot refresh: snap has no updates available: "core", "gnome-3-26-1604", "gnome-calculator", "gnome-characters", "gnome-logs", "gnome-system-monitor", "gtk-common-themes"
Oct  7 00:25:47 unix_user-VirtualBox snapd[5511]: autorefresh.go:387: auto-refresh: all snaps are up-to-date
Oct  7 00:27:32 unix_user-VirtualBox example.py: This is a Log Notice