use of io.micrometer.core.Issue in project micrometer by micrometer-metrics.
the class CompositeMeterRegistryTest method castingFunctionCounter.
@Issue("#255")
@Test
void castingFunctionCounter() {
SimpleMeterRegistry registry = new SimpleMeterRegistry();
CompositeMeterRegistry compositeMeterRegistry = new CompositeMeterRegistry();
FunctionCounter.builder("foo", 1L, x -> x).register(compositeMeterRegistry);
compositeMeterRegistry.add(registry);
}
use of io.micrometer.core.Issue in project micrometer by micrometer-metrics.
the class SimpleMeterRegistryTest method slasOnlyNoPercentileHistogram.
@Issue("#370")
@Test
void slasOnlyNoPercentileHistogram() {
DistributionSummary summary = DistributionSummary.builder("my.summary").sla(1, 2).register(registry);
summary.record(1);
Timer timer = Timer.builder("my.timer").sla(Duration.ofMillis(1)).register(registry);
timer.record(1, TimeUnit.MILLISECONDS);
Gauge summaryHist1 = registry.get("my.summary.histogram").tags("le", "1").gauge();
Gauge summaryHist2 = registry.get("my.summary.histogram").tags("le", "2").gauge();
Gauge timerHist = registry.get("my.timer.histogram").tags("le", "0.001").gauge();
assertThat(summaryHist1.value()).isEqualTo(1);
assertThat(summaryHist2.value()).isEqualTo(1);
assertThat(timerHist.value()).isEqualTo(1);
clock.add(SimpleConfig.DEFAULT.step());
assertThat(summaryHist1.value()).isEqualTo(0);
assertThat(summaryHist2.value()).isEqualTo(0);
assertThat(timerHist.value()).isEqualTo(0);
}
use of io.micrometer.core.Issue in project micrometer by micrometer-metrics.
the class CompositeCounterTest method increment.
@Test
@Issue("#119")
void increment() {
SimpleMeterRegistry simple = new SimpleMeterRegistry(SimpleConfig.DEFAULT, new MockClock());
CompositeMeterRegistry registry = new CompositeMeterRegistry();
registry.add(simple);
registry.counter("counter").increment(2.0);
assertThat(simple.get("counter").counter().count()).isEqualTo(2.0);
}
use of io.micrometer.core.Issue in project micrometer by micrometer-metrics.
the class ElasticMeterRegistryTest method nullGauge.
@Issue("#497")
@Test
void nullGauge() {
Gauge g = Gauge.builder("gauge", null, o -> 1).register(registry);
assertThat(registry.writeGauge(g, 0)).isEmpty();
TimeGauge tg = TimeGauge.builder("time.gauge", null, TimeUnit.MILLISECONDS, o -> 1).register(registry);
assertThat(registry.writeGauge(tg, 0)).isEmpty();
}
use of io.micrometer.core.Issue in project micrometer by micrometer-metrics.
the class DatadogMeterRegistryTest method encodeMetricName.
@Issue("#463")
@Test
void encodeMetricName() throws InterruptedException {
DatadogMeterRegistry registry = new DatadogMeterRegistry(new DatadogConfig() {
@Override
public String uri() {
return "http://localhost:3036";
}
@Override
public String get(String key) {
return null;
}
@Override
public String apiKey() {
return "fake";
}
@Override
public String applicationKey() {
return "fake";
}
@Override
public boolean enabled() {
return false;
}
}, Clock.SYSTEM);
CountDownLatch metadataRequests = new CountDownLatch(1);
AtomicReference<String> metadataMetricName = new AtomicReference<>();
Pattern p = Pattern.compile("/api/v1/metrics/([^\\?]+)\\?.*");
Disposable server = HttpServer.create(3036).newHandler((req, resp) -> {
Matcher matcher = p.matcher(req.uri());
if (matcher.matches()) {
metadataMetricName.set(matcher.group(1));
metadataRequests.countDown();
}
return req.receive().then(resp.status(200).send());
}).subscribe();
try {
registry.counter("my.counter#abc").increment();
registry.publish();
metadataRequests.await(10, TimeUnit.SECONDS);
assertThat(metadataMetricName.get()).isEqualTo("my.counter%23abc");
} finally {
server.dispose();
}
}
Aggregations