@Override public void count(final int value) { final MessageHistory messageHistory = MessageHistory.get(); assertNotNull(messageHistory); assertThat(messageHistory.sources(), is(2)); messageHistoryPresent = true; }
protected WireParselet parselet() { return (methodName, v) -> { v.skipValue(); if (counter < ignore) return; final MessageHistory history = MessageHistory.get(); if (history == null) return; processMessage(methodName, history); if (history.timings() > 0) { long firstTiming = history.timing(0); if (measurementWindowNanos > 0) { long windowCount = firstTiming / measurementWindowNanos; if (windowCount > lastWindowCount) { windowPassed(); lastWindowCount = windowCount; } if (firstTimeStampNanos == 0) firstTimeStampNanos = firstTiming; } } }; }
public static void main(String[] args) { SingleChronicleQueue outQueue = SingleChronicleQueueBuilder.binary("target/" + "monitor") .rollCycle(RollCycles.TEST_SECONDLY).build(); ExcerptAppender outQueueAppender = outQueue.acquireAppender(); HeartbeatListener heartbeatWriter = outQueueAppender.methodWriterBuilder(HeartbeatListener.class).methodWriterListener((m, a) -> validateAll(a)).recordHistory(true).build(); Monitor.addPeriodicUpdateSource(10, () -> currentTimeMillis -> { outQueueAppender.pretouch(); }); long lastHB = 0; while (true) { if (System.currentTimeMillis() - lastHB > 1) { // write a hb to the queue MessageHistory.get().reset(); Heartbeat heartBeat = new Heartbeat(UUID.randomUUID().toString()); heartbeatWriter.heartbeat(heartBeat); lastHB = System.currentTimeMillis(); } } }
.get(); DummyListener dummy = msg -> { MessageHistory history = MessageHistory.get(); Assert.assertEquals(1, history.sources()); .get(); DummyListener dummy = msg -> { MessageHistory history = MessageHistory.get(); Assert.assertEquals(2, history.sources()); Assert.assertEquals(3 + extraTiming, history.timings());
MessageHistory x = MessageHistory.get();
protected WireParselet parselet() { return (methodName, v) -> { v.skipValue(); if (counter < ignore) return; final MessageHistory history = MessageHistory.get(); if (history == null) return; processMessage(methodName, history); if (history.timings() > 0) { long firstTiming = history.timing(0); if (measurementWindowNanos > 0) { long windowCount = firstTiming / measurementWindowNanos; if (windowCount > lastWindowCount) { windowPassed(); lastWindowCount = windowCount; } if (firstTimeStampNanos == 0) firstTimeStampNanos = firstTiming; } } }; }
read.marshallable(MessageHistory.get()); return true;