Crate sc_telemetry
source · [−]Expand description
Substrate’s client telemetry is a part of substrate that allows ingesting telemetry data with for example Polkadot telemetry.
It works using Tokio’s tracing library. The telemetry
information uses tracing’s logging to report the telemetry data which is then retrieved by a
tracing Layer
. This layer will then send the data through an asynchronous channel to a
background task called TelemetryWorker
which will send the information to the configured
remote telemetry servers.
If multiple substrate nodes are running in the same process, it uses a tracing::Span
to
identify which substrate node is reporting the telemetry. Every task spawned using sc-service’s
TaskManager
automatically inherit this span.
Substrate’s nodes initialize/register with the TelemetryWorker
using a TelemetryHandle
.
This handle can be cloned and passed around. It uses an asynchronous channel to communicate with
the running TelemetryWorker
dedicated to registration. Registering can happen at any point
in time during the process execution.
Re-exports
pub use serde_json;
pub use tracing;
Macros
Report a telemetry.
Structs
Message sent when the connection (re-)establishes.
Implementation of Transport
whose implementation is handled by some FFI.
Used to create a stream of events with only one event: when a telemetry connection (re-)establishes.
List of telemetry servers we want to talk to. Contains the URL of the server, and the maximum verbosity level.
Handle to the TelemetryWorker
thats allows initializing the telemetry for a Substrate node.
Layer
that handles the logs for telemetries.
A handle representing a telemetry span, with the capability to enter the span if it exists.
Telemetry worker.
Constants
Consensus DEBUG log level.
Consensus INFO log level.
Consensus TRACE log level.
Consensus WARN log level.
Substrate DEBUG log level.
Substrate INFO log level.
Span name used to report the telemetry.