Files
pezkuwi-subxt/substrate/client/telemetry/README.md
T
Cecile Tonglet 4268fa0996 Doc fixes for sc-telemetry & API struct rename (#7934)
* Doc fixes for sc-telemetry

* Fix flag to disable log reloading

* Forgot to reverse the conditions

* Apply suggestion

* Rename pattern to directives

* Rename GlobalLoggerBuilder to LoggerBuilder

* Return instead of expect

* Use transparent outside the enum

* Update client/tracing/src/logging/directives.rs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2021-01-29 10:57:56 +00:00

22 lines
1.2 KiB
Markdown

# sc-telemetry
Substrate's client telemetry is a part of substrate that allows ingesting telemetry data
with for example [Polkadot telemetry](https://github.com/paritytech/substrate-telemetry).
It works using Tokio's [tracing](https://github.com/tokio-rs/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.
License: GPL-3.0-or-later WITH Classpath-exception-2.0