vector/sinks/nats/
mod.rs

1//! `NATS` sink
2//! Publishes data using [NATS](nats.io)(Neural Autonomic Transport System).
3
4use snafu::Snafu;
5
6use crate::nats::NatsConfigError;
7
8mod config;
9#[cfg(feature = "nats-integration-tests")]
10#[cfg(test)]
11mod integration_tests;
12mod request_builder;
13mod service;
14mod sink;
15#[cfg(test)]
16mod tests;
17
18#[derive(Debug, Snafu)]
19enum NatsError {
20    #[snafu(display("invalid encoding: {}", source))]
21    Encoding {
22        source: vector_lib::codecs::encoding::BuildError,
23    },
24    #[snafu(display("NATS Config Error: {}", source))]
25    Config { source: NatsConfigError },
26    #[snafu(display("NATS Connect Error: {}", source))]
27    Connect { source: async_nats::ConnectError },
28    #[snafu(display("NATS Server Error: {}", source))]
29    ServerError { source: async_nats::Error },
30    #[snafu(display("NATS Publish Error: {}", source))]
31    PublishError { source: async_nats::Error },
32}