monasca-thresh/thresh/src
Dexter Fryar afc22b56a1 Added a whitelist for restricting the StatsD metrics
A whitelist and metric map for the metrics that are
sent by Storm / Threshold Engine to the Monasca
StatsD agent/daemon.

Also relates to:
  https://github.com/hpcloud-mon/ansible-monasca-thresh/pull/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
2015-08-28 17:16:36 -05:00
..
assembly Only the jar and sample config in the deb 2015-04-20 11:22:47 -06:00
deb Only the jar and sample config in the deb 2015-04-20 11:22:47 -06:00
main Added a whitelist for restricting the StatsD metrics 2015-08-28 17:16:36 -05:00
test Fix NullPointerExceptions in MetricFilteringBolt 2015-06-05 10:52:54 -06:00