client/
client.rs

1// Load the crate
2extern crate datadog_statsd;
3
4// Import the client object.
5use datadog_statsd::client::{AlertType, Client, ServiceCheckStatus};
6
7fn main() {
8    let client = Client::new(
9        "127.0.0.1:8125",
10        "myapp",
11        Some(vec!["common1", "common2:test"]),
12    )
13    .unwrap();
14    let tags = &Some(vec!["tag1", "tag2:test"]);
15
16    client.incr("some.counter", tags);
17    println!("Sent a counter!");
18
19    client.gauge("some.gauge", 124.0, tags);
20    println!("Set a gauge!");
21
22    client.timer("timer.duration", 182.1, &None);
23    println!("Set a timer!");
24
25    client.time("closure.duration", tags, || {
26        println!("Timing a closure");
27    });
28
29    client.histogram("some.histogram", 104.3, tags);
30    println!("Set a histogram!");
31
32    client.event("event title", "event text", AlertType::Warning, tags);
33    println!("Sent a event!");
34
35    client.service_check(
36        "myapp.service.check.name",
37        ServiceCheckStatus::Critical,
38        tags,
39    );
40    println!("Sent a service_check!");
41}