The Profiler
We can set up the profiler to track the MAD statistical state required to compute MAD.
For the purposes of this demonstration, we will configure the profiler to capture
statistics on the minute mark. We will capture a global statistical state for the
value
field and we will look back for a 5 minute window when computing the
median.
Create the following file at
$METRON_HOME/config/zookeeper/profiler.json
:
{ "profiles": [ { "profile": "sketchy_mad", "foreach": "'global'", "onlyif": "true", "init" : { "s": "OUTLIER_MAD_STATE_MERGE(PROFILE_GET('sketchy_mad', 'global', PROFILE_FIXED(5, 'MINUTES')))" }, "update": { "s": "OUTLIER_MAD_ADD(s, value)" }, "result": "s" } ] }
Adjust $METRON_HOME/config/zookeeper/global.json
to adjust the capture
duration:
"profiler.client.period.duration" : "1", "profiler.client.period.duration.units" : "MINUTES"
Adjust $METRON_HOME/config/profiler.properties
to adjust the capture
duration by changing profiler.period.duration=15
to
profiler.period.duration=1