Crate slog_loggly [] [src]

A Rust library providing an slog drain for sending log messages to Loggly.

Usage

Please note that the Loggly drain is asynchronous and the log messages are sent on background. If your application exits, there might be still some log messages in the queue.

Using the Loggly drain in an asynchronous application

extern crate futures;

#[macro_use]
extern crate slog;
extern crate slog_loggly;
extern crate tokio_core;

use slog::{Drain, Logger};

use slog_loggly::LogglyDrain;

use tokio_core::reactor::{Core, Handle};

fn main() {
    // Your Loggly token and tag.
    let loggly_token = "your-loggly-token";
    let loggly_tag = "some-app";

    let mut core = Core::new().unwrap();

    let handle = core.handle();

    // Create a custom Loggly drain.
    let drain = LogglyDrain::builder(loggly_token, loggly_tag)
        .spawn_task(&handle)
        .unwrap()
        .fuse();

    // Create a logger.
    let logger = Logger::root(drain, o!());

    debug!(logger, "debug"; "key" => "value");
    info!(logger, "info"; "key" => "value");
    warn!(logger, "warn"; "key" => "value");
    error!(logger, "error"; "key" => "value");

    // do some asynchronous work...
    let res: Result<(), ()> = core.run(futures::future::ok(()));

    res.unwrap();
}

Using the Loggly drain in a normal application

#[macro_use]
extern crate slog;
extern crate slog_loggly;

use slog::{Drain, Logger};

use slog_loggly::LogglyDrain;

fn main() {
    // Your Loggly token and tag.
    let loggly_token = "your-loggly-token";
    let loggly_tag = "some-app";

    // Create a custom Loggly drain.
    let drain = LogglyDrain::builder(loggly_token, loggly_tag)
        .spawn_thread()
        .fuse();

    // Create a logger.
    let logger = Logger::root(drain, o!());

    debug!(logger, "debug"; "key" => "value");
    info!(logger, "info"; "key" => "value");
    warn!(logger, "warn"; "key" => "value");
    error!(logger, "error"; "key" => "value");

    // do some work...
}

Structs

LogglyDrain

Loggly drain.

LogglyDrainBuilder

Loggly drain builder.