anchor.diff:  probe_init(Name, _, Opts) ->
       lager:debug("probe_init(~p, _, ~p)", [Name, Opts]),
       ensure_metrics(),
  -    TTL = proplists:get_value(cache, Opts, (#st{})#st.ttl),
  -    exometer_cache:write([ae,epoch,aecore,eper], updates, 0, TTL),
       watchdog:add_proc_subscriber(self()),
       DP = proplists:get_value(datapoints, Opts, ?DATAPOINTS),
  -    {ok, #st{datapoints = DP, name = Name, ttl = TTL}}.
  +    D = initial_data(DP),
  +    {ok, #st{datapoints = DP, data = D}}.
   
   probe_terminate(Reason) ->
       lager:debug("eper_metrics probe terminating: ~p", [Reason]),
  
positive.code: -include_lib("exometer_core/include/exometer.hrl").
  
  -define(DATAPOINTS, [updates]).
  
  -record(st, {
            name,
            datapoints = ?DATAPOINTS,
            data = [],
            ttl = 5000
           }).
  
  ad_hoc_spec() ->
      [{module, ?MODULE},
       {type, probe},
       {cache, 5000},
       {sample_interval, infinity}].
  
  -spec behaviour() -> exometer:behaviour().
  
negative.code:     {error, not_supported}.
  
  probe_reset(S) ->
      {ok, S#st{data = initial_data(S#st.datapoints)}}.
  
  probe_sample(_) ->
      {error, not_supported}.
  