OC-Minitel/syslog/OpenOS/README.md

73 lines
1.5 KiB
Markdown

# 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:
```lua
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:
```lua
"syslog", message, level, service
```