Skip to content

syslog #

Write Messages into System Journal

syslog module is a thin wrapper around syslog C API. Read the syslog(3) manual page for details.

Basic usage:

import syslog

mut log := syslog.open()
defer {
    log.close()
}

log.send(.info, 'Hello, World!')

Constants #

const log_cons = C.LOG_CONS
const log_ndelay = C.LOG_NDELAY
const log_nowait = C.LOG_NOWAIT
const log_odelay = C.LOG_ODELAY
const log_perror = C.LOG_PERROR
const log_pid = C.LOG_PID
const log_auth = C.LOG_AUTH
const log_authpriv = C.LOG_AUTHPRIV
const log_cron = C.LOG_CRON
const log_daemon = C.LOG_DAEMON
const log_ftp = C.LOG_FTP
const log_kern = C.LOG_KERN
const log_local0 = C.LOG_LOCAL0
const log_local1 = C.LOG_LOCAL1
const log_local2 = C.LOG_LOCAL2
const log_local3 = C.LOG_LOCAL3
const log_local4 = C.LOG_LOCAL4
const log_local5 = C.LOG_LOCAL5
const log_local6 = C.LOG_LOCAL6
const log_local7 = C.LOG_LOCAL7
const log_lpr = C.LOG_LPR
const log_mail = C.LOG_MAIL
const log_news = C.LOG_NEWS
const log_syslog = C.LOG_SYSLOG
const log_user = C.LOG_USER
const log_uucp = C.LOG_UUCP

fn open #

fn open(p OpenParams) Syslog

open opens a system log for program. See also openlog(3).

fn (Syslog) send #

fn (s Syslog) send(lvl Level, msg string)

send sends a message of level lvl to system journal. See also syslog(3).

fn (Syslog) close #

fn (mut s Syslog) close()

close closes the system journal. See also closelog(3).

enum Level #

enum Level {
	emerg  = C.LOG_EMERG
	alert  = C.LOG_ALERT
	crit   = C.LOG_CRIT
	err    = C.LOG_ERR
	warn   = C.LOG_WARNING
	notice = C.LOG_NOTICE
	info   = C.LOG_INFO
	debug  = C.LOG_DEBUG
}

struct OpenParams #

@[params]
struct OpenParams {
pub:
	ident    string
	option   int
	facility int = log_user
}