private Timer get() { Timer t = timer; if (t == null) { t = registry.timer(id); timer = t; } return t; }
@Test public void correctTypeForTimersStream() { Registry r = newRegistry(5, false); r.timer("a").record(1, TimeUnit.MICROSECONDS); r.timer("b").record(1, TimeUnit.MICROSECONDS); Assertions.assertEquals(2, r.timers().count()); Assertions.assertEquals(2, r.stream().filter(m -> m instanceof Timer).count()); }
private static Timer getTimer(String name, String...additionalTags) { String key = className + "." + name + "." + Joiner.on(",").join(additionalTags); return monitors.computeIfAbsent(key, k -> { List<Tag> tagList = getTags(additionalTags); tagList.add(new BasicTag("unit", TimeUnit.MILLISECONDS.name())); return registry.timer(name, tagList); }); }
registry.timer(id).record( getNanoTime() - ((Long) request.getAttribute(TIMER_ATTRIBUTE)), TimeUnit.NANOSECONDS );
private List<InfluxDbResult> queryInfluxdb(InfluxDbRemoteService remoteService, String metricSetName, String query) { long startTime = registry.clock().monotonicTime(); List<InfluxDbResult> influxDbResults; try { influxDbResults = remoteService.query(metricSetName, query); } finally { long endTime = registry.clock().monotonicTime(); Id influxDbFetchTimerId = registry.createId("influxdb.fetchTime"); registry.timer(influxDbFetchTimerId).record(endTime - startTime, TimeUnit.NANOSECONDS); } return influxDbResults; }
registry.timer(prometheusFetchTimerId).record(endTime - startTime, TimeUnit.NANOSECONDS);
/** * Constructor. * * @param registry The registry to use */ public PingFederateValidator(final Registry registry) { this.jwtValidationTimer = registry.timer("genie.security.oauth2.pingFederate.jwt.validation.timer"); }
registry.timer(stackdriverFetchTimerId).record(endTime - startTime, TimeUnit.NANOSECONDS);
} finally { long end = registry.clock().monotonicTime(); registry.timer("atlas.fetchTime").record(end - start, TimeUnit.NANOSECONDS);
/** Create a new instance. */ PercentileTimer(Registry registry, Id id, long min, long max) { this.registry = registry; this.id = id; this.timer = registry.timer(id); this.min = min; this.max = max; this.counters = new AtomicReferenceArray<>(PercentileBuckets.length()); }
/** Create a new instance. */ Stats(Registry registry, String id) { this.registry = registry; activeCount = PolledMeter.using(registry) .withId(newId(registry, id, "activeThreads")) .monitorValue(new AtomicInteger()); taskExecutionTime = registry.timer(newId(registry, id, "taskExecutionTime")); taskExecutionDelay = registry.timer(newId(registry, id, "taskExecutionDelay")); skipped = registry.counter(newId(registry, id, "skipped")); uncaughtExceptionsId = newId(registry, id, "uncaughtExceptions"); }
private Timer createTimer(final Registry registry, final String requestTag) { final HashMap<String, String> tags = new HashMap<>(); tags.put("request", requestTag); return registry.timer(registry.createId(HiveMetrics.TimerFastHiveRequest.getMetricName()).withTags(tags)); }
void recordTime(final SNSMessage<?> message, final String timeName) { final Timer timer = this.registry.timer( timeName, Metrics.TagEventsType.getMetricName(), message.getClass().getName() ); timer.record(this.registry.clock().wallTime() - message.getTimestamp(), TimeUnit.MILLISECONDS); }
private Timer newTimer() { List<Timer> ts = registries.stream() .map(r -> r.timer(id)) .collect(Collectors.toList()); return new CompositeTimer(new DefaultId("foo"), clock, ts); }
private void assertCountEquals(Timer t, long expected) { Assertions.assertEquals(t.count(), expected); for (Registry r : registries) { Assertions.assertEquals(r.timer(id).count(), expected); } }
private void assertTotalEquals(Timer t, long expected) { Assertions.assertEquals(t.totalTime(), expected); for (Registry r : registries) { Assertions.assertEquals(r.timer(id).totalTime(), expected); } }
@Test public void testDistributionSummaryBadTypeAccess() { Assertions.assertThrows(IllegalStateException.class, () -> { Registry r = newRegistry(5, true); r.distributionSummary(r.createId("foo")).count(); r.timer(r.createId("foo")).count(); }); }
@Test public void testTimerBadTypeAccess() { Assertions.assertThrows(IllegalStateException.class, () -> { Registry r = newRegistry(5, true); r.timer(r.createId("foo")).count(); r.counter(r.createId("foo")).count(); }); }
@Test public void validateRegistryOk() { Id id = registry.createId(IpcMetric.clientCall.metricName()) .withTag(IpcTagKey.owner.tag("test")) .withTag(IpcResult.success) .withTag(IpcStatus.success) .withTag(IpcAttempt.initial) .withTag(IpcTagKey.attemptFinal.key(), true); registry.timer(id).record(Duration.ofSeconds(42)); IpcMetric.validate(registry); }
@Test public void testTimerBadTypeAccessNoThrow() { Registry r = newRegistry(5, false); r.timer(r.createId("foo")).count(); Counter c = r.counter(r.createId("foo")); c.increment(); Assertions.assertEquals(c.count(), 0L); }