Metrics
A metric is a uniquely name set of datapoints sent to Instrumental, aggregated to a 60 second resolution. Metrics are visualized through graphs.
Each named set of datapoints is a separate metric. For example, these are two different metrics that are measuring the performance of a web server:
web-001.cpu.idle
web-001.cpu.in_use
You can use our powerful Instrumental Query Language to transform metrics into averages, sums, min/maxes, and more!
Table of Contents
Adding Metrics
Metrics are automatically created as we receive datapoints using the metric name. There is not an "add new metric" action. In most cases, datapoints are sent to Instrumental by our application monitoring or server monitoring integrations. In some cases, like our website uptime monitoring, we track datapoints on your behalf.
Metric Types
Instrumental supports two types of metrics:
Increments
Increments are counters that go up and down in value. If you record an increment of 1
and then send an another increment of 2
, the displayable value will be 3
. Examples include:
- Feature Usage
- Web Request Counts
Gauges
Gauges are a value at a point in time. They are often used to record the time it takes to perform an action. If, within the same resolution period, you record a gauge of 1
and then send another gauge of 2
, the value will be 1.5
. Examples include:
- CPU Usage
- Queue Size
- Database Connection Count
- Query Time
Metric Resolution
All metrics are aggregated up to and stored at a 60 second resolution. When viewing graphs over large time frames (6 hours of more), data will be displayed at an resolution of five minutes or greater. You can always retrieve 60s resolution data for any period directly from our metric API.
Naming Metrics
Each metric has a unique name. Names are strings that:
- must begin with any alphanumeric character
- must contain only alphanumeric characters and
.-_
- can not contain spaces
Namespacing
Metric names are most useful when they contain multiple pieces of information about the value they represent. This is most often achieved with namespacing. The Instrumental Query Language uses dots (.
) as seperators for the grouping operations, which makes them ideal for delimiting parts of a namespace.
Here's a list of namespaced metrics created by our server monitoring tools (where web-001
is the hostname of the server):
web-001.cpu.idle
web-001.cpu.in_use
web-001.cpu.system
web-001.cpu.user
Active Metrics
Our pricing is based on active metrics per day. A metric is considered active for billing purposes if it has received datapoints within a given day. You should feel free to add and remove metrics while debugging technical issues, since these will not have any long-term pricing impact.
Removing Metrics
Once created, metrics can be removed within the Instrumental application or via our API.
Note: If datapoints are received for a metric after it has been removed, the metric will be recreated.