1
0
mirror of https://github.com/ShadowKatStudios/OC-Minitel.git synced 2024-12-25 17:58:07 +11:00
OC-Minitel/syslog/OpenOS
Izaya f8903ad587
Merge pull request #36 from Hawk777/fix-listeners-deregistering
Do not unregister listeners on unexpected data
2023-07-27 10:08:33 +10:00
..
etc/rc.d Merge pull request #36 from Hawk777/fix-listeners-deregistering 2023-07-27 10:08:33 +10:00
usr added man pages for syslog, for #9 2018-08-10 19:12:34 +10:00
README.md syntax highlighting is nicew 2018-08-08 09:15:55 +10:00

syslog for OpenOS

This package contains a syslog library, and a syslog daemon, for OpenOS. These are separated, as the daemon is optional and can be replaced at will.

Installation

Library:

oppm install libsyslog

Daemon:

oppm install syslogd

Usage

Library

The syslog library only provides one function, so the library can be called. In addition, the library provides a number of pre-configured event levels:

  • syslog.emergency
  • syslog.alert
  • syslog.critical
  • syslog.error
  • syslog.warning
  • syslog.notice
  • syslog.info
  • syslog.debug

An example using syslog as both a function and a table:

local syslog = require "syslog"
syslog("message", syslog.emergency, "service name")

Daemon

The syslog daemon lives in /etc/rc.d/syslogd.lua, and as such is managed as an rc program:

rc syslogd enable
rc syslogd start
rc syslogd reload

In addition, the daemon keeps a configuration file in /etc/syslogd.cfg. This is stored as a Lua table and may be edited in whatever way you see fit. It has the following fields and default values:

Field Default value
port 514
relay false
relayhost ""
receive false
write true
destination "/dev/null"
minlevel 6
beeplevel -1
displevel 2
filter {}

Technical details

The syslog library and daemon communicate via events, namely a syslog event. The format is as follows:

"syslog", message, level, service