riemann: Monitor your data with Riemann

The riemann() driver sends your data (for example, metrics or events) to a Riemann monitoring system.

For the list of available parameters, see riemann() destination options.

Declaration:

   riemann(
        server("<riemann-server-address>")
        port("<riemann-server-port>")
        metric("<the-metric-or-data-to-send-to-riemann>")
    );

Example: Using the riemann() driver

The following destination sends the value of the SEQNUM macro (the number of messages sent to this destination) as a metric to the Riemann server.

   @version: 4.9.0
    
    source s_network {
        network(port(12345));
    };
    
    destination d_riemann {
        riemann(
            server("localhost")
            port(5555)
            ttl("300.5")
            metric(int("$SEQNUM"))
            description("syslog-ng riemann test")
            state("ok")
            attributes(x-ultimate-answer("$(+ $PID 42)")
                       key("MESSAGE", rekey(add-prefix("x-")) )
                       )
        );
    };
    
    log {
        source(s_network);
        destination(d_riemann);
        flags(flow-control);
    };

For a detailed use-case on using AxoSyslog with the Riemann monitoring system, see the article A How to Guide on Modern Monitoring and Alerting by Fabien Wernli.