Crate syslog [] [src]

Syslog

This crate provides facilities to send log messages via syslog. It supports Unix sockets for local syslog, UDP and TCP for remote servers.

Messages can be passed directly without modification, or in RFC 3164 or RFC 5424 format

The code is available on Github

Example

extern crate syslog;

use syslog::{Facility,Severity};

fn main() {
  match syslog::unix(Facility::LOG_USER) {
    Err(e)         => println!("impossible to connect to syslog: {:?}", e),
    Ok(mut writer) => {
      let r = writer.send(Severity::LOG_ALERT, String::from("hello world"));
      if r.is_err() {
        println!("error sending the log {}", r.err().expect("got error"));
      }
    }
  }
}

Structs

Logger

Main logging structure

Enums

Facility
Severity

Functions

tcp

returns a TCP logger connecting local and server

udp

returns a UDP logger connecting local and server

unix

Returns a Logger using unix socket to target local syslog ( using /dev/log or /var/run/syslog)

Type Definitions

Priority
StructuredData

RFC 5424 structured data