pyruse/pyruse/log.py

29 lines
856 B
Python
Raw Normal View History

# pyruse is intended as a replacement to both fail2ban and epylog
# Copyright © 20172018 Y. Gablin
# Full licensing information in the LICENSE file, or gnu.org/licences/gpl-3.0.txt if the file is missing.
from enum import Enum, unique
2017-12-15 19:36:50 +01:00
from systemd import journal
@unique
class Level(Enum):
EMERG = 0 # System is unusable.
ALERT = 1 # Action must be taken immediately.
CRIT = 2 # Critical conditions, such as hard device errors.
ERR = 3 # Error conditions.
WARNING = 4 # Warning conditions.
NOTICE = 5 # Normal but significant conditions.
INFO = 6 # Informational messages.
DEBUG = 7
2017-12-15 19:36:50 +01:00
def log(level, string):
journal.send(string, PRIORITY = level.value)
2017-12-15 19:36:50 +01:00
def debug(string):
log(Level.DEBUG, string)
2017-12-15 19:36:50 +01:00
2018-02-11 13:17:48 +01:00
def notice(string):
log(Level.NOTICE, string)
2018-02-11 13:17:48 +01:00
2017-12-15 19:36:50 +01:00
def error(string):
log(Level.ERR, string)