anchor.diff:          end),
       case escalus_pred:is_iq_result(SubscribeResult) of
           true ->
  -            exometer:update(?SUBSCRIBE_SUCCESS_COUTER, 1),
  -            exometer:update(?SUBSCRIBE_TIME, SubscribeTime);
  +            amoc_metrics:update_counter(subscribe_success, 1),
  +            amoc_metrics:update_time(subscribe_time, SubscribeTime);
           Error ->
  -            exometer:update(?SUBSCRIBE_FAILS_COUTER, 1),
  +            amoc_metrics:update_counter(subscribe_fails, 1),
               lager:error("Error subscribing node ~p filed: ~p", [Node, Error]),
               exit(connection_failed)
           end.
  
positive.code: %% --- Metrics ---------------------------------------------------------------------------------------------
  
  init_metrics() ->
      Stats =
      [
          {?NODE_CREATE_FAILS_COUTER, spiral},
          {?SUBSCRIBE_FAILS_COUTER, spiral},
          {?PUBLISH_FAILS_COUTER, spiral},
          {?NODE_CREATE_SUCCESS_COUTER, spiral},
          {?SUBSCRIBE_SUCCESS_COUTER, spiral},
          {?PUBLISH_SUCCESS_COUTER, spiral},
          {?NODE_CREATE_TIME, histogram},
          {?SUBSCRIBE_TIME, histogram},
          {?PUBLISH_TIME, histogram},
          {?MESSAGE_TTD_CT, histogram}
      ],
      [create_stat(Path, GraphType) ||  {Path, GraphType} <- Stats].
  
  create_stat(Path, spiral) ->
      exometer:new(Path, spiral),
      exometer_report:subscribe(exometer_report_graphite, Path, [one, count], 1000);
  
  create_stat(Path, histogram) ->
      exometer:new(Path, histogram),
      exometer_report:subscribe(exometer_report_graphite, Path, [mean, min, max, median, 95, 99, 999], 1000).
  %% ----------------------------------------------------------------------------------------------------------
  
  assign_role(Id, CreatorsNumber) when Id < CreatorsNumber ->
  
negative.code: -define(GROUPNAME, <<"pubsub_test_group_name">>).
  -define(DELAY_BETWEEN_MESSAGES, 100).
  -define(WAIT_FOR_NODES, 10000).
  
  -export([init/0]).
  -export([start/1]).
  