Crate zbx_sender
source · [−]Expand description
Zabbix Sender Protocol implementation to transmit metrics to Zabbix Server.
Provides sync (and optional async) methods to send key-value pairs to Zabbix Server and Zabbix
Proxy. Can communicate unencrypted or via TLS with certificates or pre-shared key (PSK). Also
provides a clap
command line parser that can be used to
configure a TLS connection to Zabbix for crates that use this library.
Crate Features
tracing
- enable logging via thetracing
crate.async_tokio
- enable the async methodSender.send_async()
to send values asynchronously usingtokio::net::TcpStream
tls_rustls
- use therustls
crate to enable TLS certificate encryption with Zabbix Server. As of version 0.20,rustls
does NOT support PSK encryption.tls_openssl
- use theopenssl
crate to enable TLS certificate encryption or PSK encryption with Zabbix Server.tls_rustls_tokio
- MUST be enabled when bothasync_tokio
andtls_rustls
are enabled, because Cargo does not support conditional feature enablement (i.e. https://github.com/rust-lang/cargo/issues/1839).tls_openssl_tokio
- MUST be enabled when bothasync_tokio
andtls_openssl
are enabled.clap
- Include the struct that implementsclap::Args
, which can be included in downstream users of this library to get command line argument parsing that mirrors Zabbix native TLS configuration. See details in the documentation for tls::ClapArgs.
Modules
Structs
The message that is sent to the Zabbix server.
Structure of Zabbix server’s response
Data item sent to the server.
Implementation of Zabbix Sender protocol.
Enums
Errors that occur during configuration of the Zabbix connection or submission of item values to Zabbix
Traits
Contract for types that provide the ability to cast to a Message
type.
Type Definitions
A std::result::Result for the zbx_sender::Error type