Skip to main content
Honeycomb supports three telemetry signals: traces, logs, and metrics. Metrics are the right tool for continuous monitoring of known quantities: infrastructure health, request rates, error counts, and other numeric signals you always care about, regardless of what any individual request is doing.
If you are new to metrics or want to understand how Honeycomb thinks about metrics versus events, visit Traces, Metrics, and Logs.

How metrics work in Honeycomb

Metrics in Honeycomb are built around two core concepts: data points and time series. Each individual measurement is called a data point. A time series is the sequence of data points for a single metric with a consistent set of attributes (for example, CPU utilization for a specific host over the past 24 hours). Changing any metric attribute value creates a different time series for that metric. For example, CPU utilization grouped by host.name produces one time series per host.

Supported metric types

Honeycomb supports the following OpenTelemetry metric types:
  • Gauges: A snapshot of a value at a point in time, such as current memory usage
  • Counters and sums: Cumulative or delta counts of something over time, such as total requests served
  • Histograms: A distribution of values, such as request latency bucketed by duration

Connecting your metrics pipeline

Honeycomb is built on the OpenTelemetry Metrics Data Model, which means your existing OpenTelemetry metrics pipeline works without modification. If you are already sending OTLP metrics, you can point them at Honeycomb and start exploring your data immediately. No instrumentation changes are required. Honeycomb stores metrics in a dedicated metrics dataset, separate from your traces and logs, to keep your data organized and make querying more predictable.

Automatic handling

Honeycomb handles a few things automatically:
  • Automatic aggregation defaults: Honeycomb selects the appropriate temporal aggregate for each metric type. Counters and cumulative sums default to RATE(), gauges default to LAST(), and histograms are handled as distributed structures. You can override these defaults in your queries.
  • Native histogram support: Honeycomb stores histograms as distributed data structures rather than pre-bucketed values. This enables accurate percentile calculations (p95, p99) and flexible merging across time windows and grouped dimensions.
  • Calculated fields: Apply temporal logic and derived calculations directly in your queries without modifying your dataset schema, so you can compute ratios or rates on the fly.

How to query metrics

Querying metrics works the same way as querying any other data in Honeycomb. You use the Query Builder, filter and group by resource attributes, and visualize results as time series charts. Metrics queries support temporal aggregation functions, which account for the time-based nature of metric data:
  • RATE(metric): Calculates the per-second rate of change of a counter or cumulative sum
  • INCREASE(metric): Calculates the difference between the first and last values within each time step, accounting for counter resets
  • LAST(metric): Returns the most recent value for each time step
  • SUMMARIZE(metric): Sums all data points in a step, interpolating at step boundaries to avoid double-counting and gaps
To learn more about how temporal aggregation works and when to use each function, visit Temporal Aggregation and Applying Temporal Aggregation Functions. Metrics queries also support spatial aggregation (comparing values across multiple time series at the same point in time) and Query Math, which lets you build multi-step queries with inline mathematical formulas to calculate ratios, percentages, and other derived values.

How metrics work with traces and logs

Metrics give you high-resolution continuous data over time. Events give you the rich context of what happened in a specific request. Having both in Honeycomb means you can move between signals without switching tools.

Correlations

When you run an events-based query, Honeycomb automatically surfaces relevant metrics in the Correlations view below your query results. For example, if you are investigating a latency spike, you can explore CPU utilization, memory usage, or network throughput for the relevant hosts alongside your query results. Correlations also appear at the span level in trace waterfalls, surfacing infrastructure metrics for the resource associated with a specific span. To learn more, visit Correlations.

Metrics-based Triggers

You can alert on metrics data using the same Trigger system you use for events, with the same notification destinations and reliability. Metrics-based Triggers support temporal aggregation functions, so you can alert on rates and trends rather than just raw values. To learn more, visit Metrics-based Triggers.

Boards

Add metrics queries to Boards alongside event queries to build a unified view of system health. To learn more, visit Boards.

When to use metrics

Metrics and events serve different purposes and work best together. Use metrics when you want to:
  • Track the health and resource usage of infrastructure such as hosts, containers, and Kubernetes nodes
  • Monitor high-volume numeric signals at regular intervals, such as request rates or error counts
  • Alert on threshold conditions over time using rates and trends
  • Get a continuous picture of known quantities: things you always care about, regardless of what any individual request is doing
Use events (traces and logs) when you want to:
  • Understand what happened during a specific request or transaction
  • Debug a problem by examining individual spans, errors, or log lines
  • Ask open-ended questions across high-cardinality dimensions you didn’t anticipate in advance
  • Identify outliers and unusual patterns using BubbleUp
In practice, you will often use both. A metrics alert surfaces a problem; a trace investigation tells you why it happened.

Metrics and your plan

Honeycomb measures metrics usage in data points per month (DPPM). Each plan includes a data point allotment on top of your event allotment. To see the data point allotment for your plan, visit Honeycomb Pricing Plans. Honeycomb counts the metric observations you send, not the number of unique time series those observations belong to. High-cardinality attributes, such as host IDs, pod IDs, or CI job IDs, can create many short-lived time series, but they do not add a separate per-series billing charge. To understand what counts as a data point, visit How Honeycomb Calculates Usage. Data point usage is tracked and throttled independently from events, using the same overage model. To learn how Honeycomb measures usage, handles overages, and applies burst protection for both events and data points, visit How Honeycomb Calculates Usage.

Next steps