Skip to main content
Sumo Logic

Metric Formats

Sumo Logic supports the Graphite and Carbon 2.0 metric formats.

Sumo supports the Graphite and the Carbon 2.0 metric formats. Both are plaintext protocols.  Each format specifies the identifier of the specific metric, the value of the measurement, and a timestamp that indicates when the measurement was made.

Graphite example

Graphite metrics are formatted like this:

metric_path metric_value metric_timestamp

Where:

  • metric_path is a dot-separated string that identifies the thing being measured.
  • metric_value is any numeric value.
  • metric_timestamp is a UNIX timestamp.


Here’s an example of a graphite metric:  

cluster-1.node-1.cpu-1.cpu-idle 97.29 1460061337

In the metric above, 

  • The thing being measured is cluster-1.node-1.cpu-1.cpu-idle, which we could colloquially refer to as the  cpu-idle value for cpu-1, in node-1, in cluster-1.  
  • The value measured is 97.29.
  • The timestamp for the instant that the metric was measured is 1460061337.

One key difference between the Graphite and Carbon 2.0 formats is that Carbon 2.0 supports meta tags, which are key-value pairs that make it easier to query metrics.  (See Carbon 2.0 example for more information about meta tags.)

Carbon 2.0 example

Carbon 2.0 metrics conform to the Metrics 2.0 specification. Carbon 2.0 metrics look like this:

intrinsic_tags  meta_tags value timestamp

Where:

  • intrinsic_tags is one or more space-separated key-value pairs that uniquely identify what is being measured. Intrinsic tags are also referred to as dimensions. 
  • meta_tags is zero or more space-separated key-value pairs that provide additional, but not identifying information about the thing being measured. A meta tag is a piece of metadata that might be useful in querying your metrics. It doesn’t identify the thing being measured, but provides additional information of interest. For example, it might be interesting to know the collection agent that obtained the measurement. 
  • value is any numeric value.
  • timestamp is a UNIX timestamp.

In the Carbon 2.0 format, two spaces must be used after intrinsic_tags, even if no meta_tags are specified. 

In the Graphite-formatted metric described above, the bit that identifies the thing being measured—the metric_path—is:

cluster-1.node-1.cpu-1.cpu-idle 

In the Carbon 2.0 format, that metric_path translates to a set of intrinsic tags:

cluster=cluster-1 node=node-1 cpu=cpu-1 metric=cpu_idle

Carbon 2.0 is a richer metric format than Graphite, because it supports meta tags. So, a Carbon 2.0-formatted version of our example metric could include additional key-value pairs that will make our metrics easy to query. For example, below we include a meta tag that identifies the agent that collected the metric.

cluster=cluster-1 node=node-1 cpu=cpu-1  agent=biggie 97.29 1460061337

Limits on meta_tag updates

Note that for Carbon 2.0 metrics, you can update the value of a meta_tag for a given time series six times per day at most. Additional updates to that meta_tag for that time series will not be reflected in Sumo.