anchor.diff:  probe_reset(S) ->
       {ok, S#st{data = []}}.
   
  -probe_sample(#st{datapoints = DPs} = S) ->
  -    {_Pid, Ref} = spawn_monitor(
  -                    fun() ->
  -                            exit({sample, sample(DPs)})
  -                    end),
  -    {ok, S#st{ref = Ref}}.
  +probe_sample(_) ->
  +    {error, not_supported}.
   
   probe_setopts(_Entry, Opts, S) ->
       DPs = proplists:get_value(datapoints, Opts, S#st.datapoints),
  
positive.code:           name,
            datapoints = ?DATAPOINTS,
            data = [],
            ttl = 5000,
            ref
           }).
  
  ad_hoc_spec() ->
      [{module, ?MODULE},
       {type, probe},
       {cache, 5000}].
  
  -spec behaviour() -> exometer:behaviour().
  behaviour() ->
  
negative.code: probe_handle_msg({watchdog, _Node, _Ts, _Trigger, TriggerData}, S) ->
      update_metrics(TriggerData),
      {ok, update_counter(updates, 1, S)};
  probe_handle_msg(_Msg, S) ->
      lager:debug("Unknown msg: ~p", [_Msg]),
      {ok, S}.
  
  probe_code_change(_, S, _) ->
      {ok, S}.
  
  update_counter(K, Value, #st{data = Data, name = Name, ttl = TTL} = S) ->
      Data1 =
  