Skip to content

Commit

Permalink
Added a whitelist for restricting the StatsD metrics
Browse files Browse the repository at this point in the history
A whitelist and metric map for the metrics that are
sent by Storm / Threshold Engine to the Monasca
StatsD agent/daemon.

Also relates to:
  hpcloud-mon/ansible-monasca-thresh#14

=======

/etc/monasca/thresh-config.yml

```
statsdConfig:
  host: localhost
  port: 8125
  debugmetrics: false
  dimensions: !!map
    service : monitoring
    component : storm
  whitelist: !!seq
    - aggregation-bolt.execute-count.filtering-bolt_alarm-creation-stream
    - aggregation-bolt.execute-count.filtering-bolt_default
    - aggregation-bolt.execute-count.system_tick
    - filtering-bolt.execute-count.event-bolt_metric-alarm-events
    - filtering-bolt.execute-count.metrics-spout_default
    - thresholding-bolt.execute-count.aggregation-bolt_default
    - thresholding-bolt.execute-count.event-bolt_alarm-definition-events
    - system.memory_heap.committedBytes
    - system.memory_nonHeap.committedBytes
    - system.newWorkerEvent
    - system.startTimeSecs
    - system.GC_ConcurrentMarkSweep.timeMs
  metricmap: !!map
    aggregation-bolt.execute-count.filtering-bolt_alarm-creation-stream :
      monasca_threshold.aggregation-bolt.execute-count.filtering-bolt_alarm-creation-stream
    aggregation-bolt.execute-count.filtering-bolt_default :
      monasca_threshold.aggregation-bolt.execute-count.filtering-bolt_default
    aggregation-bolt.execute-count.system_tick :
      monasca_threshold.aggregation-bolt.execute-count.system_tick
    filtering-bolt.execute-count.event-bolt_metric-alarm-events :
      monasca_threshold.filtering-bolt.execute-count.event-bolt_metric-alarm-events
    filtering-bolt.execute-count.metrics-spout_default :
      monasca_threshold.filtering-bolt.execute-count.metrics-spout_default
    thresholding-bolt.execute-count.aggregation-bolt_default :
      monasca_threshold.thresholding-bolt.execute-count.aggregation-bolt_default
    thresholding-bolt.execute-count.event-bolt_alarm-definition-events :
      monasca_threshold.thresholding-bolt.execute-count.event-bolt_alarm-definition-events
    system.memory_heap.committedBytes :
      monasca_threshold.system.memory_heap.committedBytes
    system.memory_nonHeap.committedBytes :
      monasca_threshold.system.memory_nonHeap.committedBytes
    system.newWorkerEvent :
      monasca_threshold.system.newWorkerEvent
    system.startTimeSecs :
      monasca_threshold.system.startTimeSecs
    system.GC_ConcurrentMarkSweep.timeMs :
      monasca_threshold.system.GC_ConcurrentMarkSweep.timeMs
```

host: IP or host where the Monasca Agent running a StatsD is running that will consume
      the metrics produced by Storm / Threshold Engine

port: UDP port number where the Monasca Agent running a StatsD daemon that will consume
      the metrics produced by Storm / Threshold Engine

dimensions: A map of key/value pairs that will be passed along as dimensions for each metric

whitelist: A list of metrics in the native name that Storm presents

metricmap: A mapping from the native Storm metric name to a user defined name.  The user
           defined name is what will appear in the Monasca data store.  If there is no
           mapping present and it is listed in the whitelist then it will be published
           with the native name. The 12 metrics whitelisted/mapped above correspond to the
           monasca health dashboard which is defined in grafana.

           https://github.com/hpcloud-mon/grafana/blob/master/src/app/dashboards/monasca.json

Change-Id: I7bcefd03d02714ac42efd9b2d9cadb77907fa17e
  • Loading branch information
dlfryar-zz committed Aug 28, 2015
1 parent 9aeec27 commit afc22b5
Show file tree
Hide file tree
Showing 4 changed files with 525 additions and 56 deletions.
Loading

1 comment on commit afc22b5

@jobrs
Copy link

@jobrs jobrs commented on afc22b5 Nov 24, 2015

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

component should IMHO be set to 'apache-storm' to be consistent with agent discovery (mon.py)

Please sign in to comment.