Files
pezkuwi-subxt/substrate/client/telemetry
Oliver Tale-Yazdi e89d0fca35 Lift dependencies to the workspace (Part 2/x) (#3366)
Lifting some more dependencies to the workspace. Just using the
most-often updated ones for now.
It can be reproduced locally.

```sh
# First you can check if there would be semver incompatible bumps (looks good in this case):
$ zepter transpose dependency lift-to-workspace --ignore-errors syn quote thiserror "regex:^serde.*"

# Then apply the changes:
$ zepter transpose dependency lift-to-workspace --version-resolver=highest syn quote thiserror "regex:^serde.*" --fix

# And format the changes:
$ taplo format --config .config/taplo.toml
```

---------

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
2024-02-20 14:28:05 +00:00
..
2023-09-04 12:02:32 +03:00

sc-telemetry

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.

License: GPL-3.0-or-later WITH Classpath-exception-2.0