github.com/gnolang/gno@v0.0.0-20240520182011-228e9d0192ce/tm2/pkg/telemetry/README.md (about)

     1  # Telemetry
     2  
     3  The purpose of this package is to provide a way to easily integrate OpenTelemetry Protocol (OTLP) metrics collection into a Tendermint 2 node.
     4  
     5  ## Configure Telemetry
     6  
     7  Telemetry can be regularly configured within the TM2 node through the
     8  `[telemetry]` section. It is disabled by default.
     9  
    10  ## OTEL configuration
    11  There are many ways configure the OTEL pipeline for exporting metrics. Here is an example of how a local OTEL collector can be configured to send metrics to Grafana Cloud. This is an optional step and can be highly customized.
    12  
    13  ### OTEL collector
    14  The latest collector releases can be found [here](https://github.com/open-telemetry/opentelemetry-collector-releases/releases). This is an example of the config that can be used to receive metrics from gno.land and publish them to Grafana Cloud.
    15  ```yaml
    16  receivers:
    17    otlp:
    18      protocols:
    19        grpc:
    20          endpoint: 0.0.0.0:4317 # should be the same as the TELEM_EXPORTER_ENDPOINT variable
    21  
    22  processors:
    23    batch:
    24  
    25  exporters:
    26    otlphttp:
    27      endpoint: https://otlp-gateway-prod-us-east-0.grafana.net/otlp
    28  
    29  service:
    30    pipelines:
    31      metrics:
    32        receivers: [otlp]
    33        processors: [batch]
    34        exporters: [otlphttp]
    35  ```
    36  
    37  Collector exporter environment variables, including those for authentication, can be found [here](https://opentelemetry.io/docs/specs/otel/protocol/exporter/).
    38  
    39  ## Resources
    40  - https://opentelemetry.io/docs/collector/
    41  - https://grafana.com/docs/grafana-cloud/monitor-applications/application-observability/setup/collector/