Metrics and attributes collected by the Splunk Distribution of OTel Go

The Splunk Distribution of OpenTelemetry Go collects the following metrics.

The Splunk Distribution of OpenTelemetry Go collects runtime and custom metrics. To learn about the different metric types, see Metric types.

For custom metrics instrumentation and instrument types, see Create custom metrics.

Runtime metrics

The following runtime metrics are automatically collected and exported:

Metric

Type

Unit (UCUM)

Description

go.memory.used CounterBy Memory used by the Go runtime
go.memory.limit CounterBy Go runtime memory limit configured by the user, if a limit exists
go.memory.allocated CounterBy Memory allocated to the heap by the application
go.memory.allocations Counter{allocation}Count of allocations to the heap by the application
go.memory.gc.goal CounterBy Heap size target for the end of the GC cycle
go.goroutine.count Counter{goroutine} Count of live goroutines
go.processor.limit Counter {thread} Number of OS threads that can execute user-level Go code simultaneously
go.config.gogc Counter% Heap size target percentage configured by the user, default is 100

Connection pool metrics

The Splunk Distribution of OpenTelemetry Go instruments several connection pool implementations:

  • splunksql

  • splunkmysql

  • splunkpgx

  • splunkgorm

  • splunksqlx

  • splunkpq

Each of the connection pools reports a subset of the following metrics:

Metric

Type

Description

db.client.connections.usage (Experimental)

Gauge

Number of connections that are currently in the state described by the state attribute.

db.client.connections.max (Experimental)

Gauge

Maximum number of open connections allowed.

db.client.connections.wait_time (Experimental)

Timer

Time it took to obtain an open connection from the pool.

The following attributes are available:

Tag

Value

pool.name (Experimental)

Name of the connection pool. Applies to all connection pool metrics.

state (Experimental)

State of the connection. Can be idle or used. Only applies to the db.client.connections.usage metric.