Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/Vagabond/erlang-syslog

Erlang port driver for interacting with syslog via syslog(3)
https://github.com/Vagabond/erlang-syslog

Last synced: 8 days ago
JSON representation

Erlang port driver for interacting with syslog via syslog(3)

Awesome Lists containing this project

README

        

Erlang driver for syslog
------------------------

This is an erlang port driver for interacting with syslog.

Installing it
-------------

./rebar3 compile

Trying it
---------

You should have a look at syslog.h.

In another shell :

$ tail -f /var/log/syslog

Or, for mac users :

$ tail -f /var/log/system.log

In erlang shell :

$ erl
> syslog:start().
> {ok,Log} = syslog:open("Beuha", [cons, perror, pid], local0).
> syslog:log(Log, err, "Damned").
> syslog:log(Log, info, "process count: ~w", [length(processes())]).

API
---

### syslog:open(Ident, Logopt, Facility) -> {ok, port()} ###

_Ident_ is an arbitrary string
_Logopt_ is an atom or array of atom, you can use a number if you're brave enough :

* pid
* cons
* odelay
* ndelay
* perror

_Facility_ is an atom :

* kern
* user
* mail
* daemon
* auth
* syslog
* lpr
* news
* uucp
* cron
* authpriv
* ftp
* netinfo
* remoteauth
* install
* ras
* local0
* local1
* local2
* local3
* local4
* local5
* local6
* local7

The `open` call returns either `{ok, Log}` where _Log_ is a syslog handle
that can be passed to subsequent `log` and `close` calls, or it will throw
{error, badarg}.

### syslog:log(Log, Priority, Message) -> ok ###

_Log_ is a syslog handle returned from `open`
_Priority_ can be a number or better, an atom :

* emerg
* alert
* crit
* err
* warning
* notice
* info
* debug

_Message_ is a string.

### syslog:log(Log, Priority, FormatMsg, FormatArgs) -> ok ###

Same as above, but allows for the construction of log messages similar to
formatting strings via `io_lib:format/2`, where _FormatMsg_ indicates the
formatting instructions and _FormatArgs_ is a list of arguments to be
formatted.

### syslog:close(Log) -> ok ###

_Log_ is a syslog handle returned from `open`

BUGS
----

* None known