in remote/src/main/java/com/spotify/metrics/remote/SemanticAggregatorMetricBuilder.java [85:123]
public RemoteCounter newMetric(
final MetricId id,
final List<String> shardKey,
final Remote remote) {
final Map<String, String> allAttributes =
SemanticAggregator.buildAttributes(id, "counter");
final String shard =
Sharder.buildShardKey(shardKey, allAttributes);
return new RemoteCounter() {
@Override
public void inc() {
inc(1);
}
@Override
public void inc(long n) {
remote.post(
"/",
shard,
SemanticAggregator.buildDocument(
Long.toString(n),
id.getKey(),
allAttributes));
}
@Override
public void dec() {
inc(-1);
}
@Override
public void dec(long n) {
inc(-n);
}
};
}