Jump to: navigation, search

Difference between revisions of "Monasca/MetricNamingConventionProposal"

(Existing and Proposed Metric Names)
(Existing and Proposed Metric Names)
Line 57: Line 57:
 
=== Existing and Proposed Metric Names ===
 
=== Existing and Proposed Metric Names ===
  
'''Proposed pattern format for metric names''
+
''Proposed pattern format for metric names''
 
:proper_noun.noun.measurement.type.qualifier
 
:proper_noun.noun.measurement.type.qualifier
  

Revision as of 22:05, 30 April 2015

Metric Names

Although metric names in the Monasca API can be any string the Monasca Agent uses several naming conventions as follows:

   All lowercase characters.
   '.' is used to hierarchially group. This is done for compatibility with Graphite as Graphite assumes a '.' as a delimiter.
   '_' is used to separate words in long names that are not meant to be hierarchical.

Metric Name Attribute Categories

Considering the five following attributes with a dot delimited metric name will allow future aggregation, filtering, parsing, and pattern matching.

  1. proper_noun
  2. noun
  3. measurement (status, capacity, throughput, latency)
  4. type (hits, kilobytes, bytes, count, percent, state)
  5. qualifier (total, second, minute, hour, percent, current)

Common measurement categories and terms

Proper Noun

apache
system
kafka
mysql
zookeeper

Noun

net
cpu
busy_worker
idle_worker

Measurement

Throughput
amount per time
Status
up, down, alive, dead, crashed, recovering, rebooting, shutting down
Capacity
full, percentage, empty
Latency
a time based measurement

Type

hits
kbytes
capacity
percent
state
count

Qualifier

total
second
current

Existing and Proposed Metric Names

Proposed pattern format for metric names

proper_noun.noun.measurement.type.qualifier
Existing Name Suggested Name
apache.net.hits apache.net.throughput.hits.total
apache.net.kbytes_sec apache.net.throughput.kbytes.second
apache.net.requests_sec apache.net.throughput.second.total
apache.net.total_kbytes apache.net.throughput.kbytes.total
apache.performance.busy_worker_count apache.busy_worker.capacity.count.total
apache.performance.cpu_load_perc apache.cpu.capacity.perccent.total
apache.performance.idle_worker_count apache.idle_worker.capacity.count.total
apache.status apache.system.status.state.current
cpu.idle_perc system.cpu.capacity.percent.total