Telemetry
Last updated
Last updated
When you run a node on an Endless network, your node will send telemetry data to Endless Labs. All node types (e.g., validators, VFNs and PFNs) send telemetry data. This also occurs for other binaries (e.g., the Endless CLI). If you would prefer not to send telemetry, you can disable telemetry using the instructions below.
The list below shows the categories of information collected by Endless node telemetry:
Core metrics: Core metrics are those emitted by the core components of the endless-node
binary. These include, state sync, consensus, mempool and storage. You can see the full list of core metrics, .
Build information: Rust build information, including the versions of Rust, cargo, the target architecture and the build tag are also collected. You can see the full list of build information, .
System information: System information is also collected by node telemetry. This includes resource information (e.g., CPU, RAM, disk and network specifications) as well as operating system information. You can see the full list of system information, .
Network metrics:: Network metrics are also collected by node telemetry. These include network information such as the number of connected peers, the number of inbound and outbound messages, and the size of messages sent and received. You can see the full list of network metrics, .
Prometheus metrics: Prometheus metrics are also collected by node telemetry. These include runtime metrics for all the components of the endless-node
binary. You can see the full list of Prometheus metrics by visiting the metrics endpoint on your node using the node inspection service.
Node logs: Logs of warn-level and higher are also collected by node telemetry. These are used to monitor the health of the network. You can identify these logs by filtering the logs for the endless-node
binary, locally.
The Endless CLI tool also collects telemetry data. The list below shows the categories of information collected by CLI telemetry:
Command metrics: Command metrics are those emitted by the CLI when a command is executed. These include the command itself, the latency of the command, and the success or failure of the command. You can see the full list of CLI metrics, .
Build information: Rust build information, including the versions of Rust, cargo, the target architecture and the build tag are also collected for the CLI. You can see the full list of build information, .
On macOS and Linux, you can set the ENDLESS_DISABLE_TELEMETRY
environment variable to disable the metrics sent by both the Endless node and the Endless CLI tool. To disable all telemetry, set ENDLESS_DISABLE_TELEMETRY
environment to true
:
The above command only disables telemetry for a single session in the current terminal where you run the command. To disable it permanently across all terminals and Endless binary invocations, include it in your startup profile. For example:
You can also configure telemetry to disable specific telemetry metrics and collections. The environment variable list below shows the variables you can set to configure telemetry for Endless nodes and the CLI:
ENDLESS_DISABLE_TELEMETRY
: This disables all telemetry emission, including sending telemetry to the Google Analytics service (GA4).
ENDLESS_FORCE_ENABLE_TELEMETRY
: This overrides the chain ID check and forces the Endless node to send telemetry regardless of whether the remote service accepts it or not.
ENDLESS_DISABLE_TELEMETRY_PUSH_LOGS
: This disables sending logs.
ENDLESS_DISABLE_TELEMETRY_PUSH_EVENTS
: This disables sending custom events.
ENDLESS_DISABLE_LOG_ENV_POLLING
: This disables the dynamic ability to send verbose logs.
ENDLESS_DISABLE_PROMETHEUS_NODE_METRICS
: This disables sending the Endless node resource metrics such as system CPU, memory, etc.
ENDLESS_DISABLE_TELEMETRY_PUSH_METRICS
: This disables sending metrics.