@Override public AfterOperationEvent create(final IValueDeserializer deserializer) { return new AfterOperationEvent(deserializer); }
@Override public AfterOperationEvent create(final IValueDeserializer deserializer) throws RecordInstantiationException { return new AfterOperationEvent(deserializer); }
@Override @Deprecated public AfterOperationEvent create(final Object[] values) { return new AfterOperationEvent(values); }
public List<IMonitoringRecord> newTestEventRecords() { final List<IMonitoringRecord> someEvents = new ArrayList<>(); final BeforeOperationEvent testBeforeOperationEvent = new BeforeOperationEvent(22L, 11L, 101, "BeOpEv", "BeforeOperationEvent"); final AfterOperationEvent testAfterOperationEvent = new AfterOperationEvent(6L, 8L, 120, "AfOpEv", "AfterOperationEvent"); final AfterOperationFailedEvent testAfterOperationFailedEvent = new AfterOperationFailedEvent(10L, 12L, 150, "AfOpFaEv", "AfterOperationFailedEvent", "cause"); someEvents.add(testBeforeOperationEvent); someEvents.add(testAfterOperationEvent); someEvents.add(testAfterOperationFailedEvent); return someEvents; }
public void repairAllBeforeEventsLeftInStackAtTermination() { this.beforeEventStackEmptyAtTermination = true; while (!this.beforeEventStack.isEmpty()) { final BeforeOperationEvent beforeEvent = this.beforeEventStack.getLast(); final String opSignature = beforeEvent.getOperationSignature(); final String classSignature = beforeEvent.getClassSignature(); final long timestamp = beforeEvent.getTimestamp(); final long traceID = beforeEvent.getTraceId(); final int orderIndex = this.maxOrderIndex + 1; if (beforeEvent instanceof BeforeConstructorObjectEvent) { this.insertEvent(new AfterConstructorObjectEvent(timestamp, traceID, orderIndex, opSignature, classSignature, ((BeforeConstructorObjectEvent) this.beforeEventStack.getLast()).getObjectId())); } else if (beforeEvent instanceof BeforeConstructorEvent) { this.insertEvent(new AfterConstructorEvent(timestamp, traceID, orderIndex, opSignature, classSignature)); } else if (beforeEvent instanceof BeforeOperationObjectEvent) { this.insertEvent(new AfterOperationObjectEvent(timestamp, traceID, orderIndex, opSignature, classSignature, ((BeforeOperationObjectEvent) this.beforeEventStack.getLast()).getObjectId())); } else { this.insertEvent(new AfterOperationEvent(timestamp, traceID, orderIndex, opSignature, classSignature)); } this.beforeEventStack.removeLast(); } }
public void repairAllBeforeEventsLeftInStackAtTermination() { this.beforeEventStackEmptyAtTermination = true; while (!this.beforeEventStack.isEmpty()) { final BeforeOperationEvent beforeEvent = this.beforeEventStack.getLast(); final String opSignature = beforeEvent.getOperationSignature(); final String classSignature = beforeEvent.getClassSignature(); final long timestamp = beforeEvent.getTimestamp(); final long traceID = beforeEvent.getTraceId(); final int orderIndex = this.maxOrderIndex + 1; if (beforeEvent instanceof BeforeConstructorObjectEvent) { this.insertEvent( new AfterConstructorObjectEvent(timestamp, traceID, orderIndex, opSignature, classSignature, ((BeforeConstructorObjectEvent) this.beforeEventStack.getLast()).getObjectId())); } else if (beforeEvent instanceof BeforeConstructorEvent) { this.insertEvent( new AfterConstructorEvent(timestamp, traceID, orderIndex, opSignature, classSignature)); } else if (beforeEvent instanceof BeforeOperationObjectEvent) { this.insertEvent( new AfterOperationObjectEvent(timestamp, traceID, orderIndex, opSignature, classSignature, ((BeforeOperationObjectEvent) this.beforeEventStack.getLast()).getObjectId())); } else { this.insertEvent( new AfterOperationEvent(timestamp, traceID, orderIndex, opSignature, classSignature)); } this.beforeEventStack.removeLast(); } }
this.monitoringCtrl.newMonitoringRecord(new AfterOperationEvent(this.timeSource.getTime(), traceId, trace.getNextOrderId(), signature, clazz)); return retval;
@AfterReturning(marker = BodyMarker.class, scope = "") public static void onMethodExit(final MethodStaticContext msc) { if (!CTRLINST.isMonitoringEnabled() || !CTRLINST.isProbeActivated(signature)) { return; } if (newTrace) { // close the trace TRACEREGISTRY.unregisterTrace(); } // measure after successful execution CTRLINST.newMonitoringRecord(new AfterOperationEvent(TIME.getTime(), traceId, trace.getNextOrderId(), signature, clazz)); }
@AfterReturning(marker = BodyMarker.class, scope = "") public static void onMethodExit(final MethodStaticContext msc) { if (!CTRLINST.isMonitoringEnabled() || !CTRLINST.isProbeActivated(signature)) { return; } if (newTrace) { // close the trace TRACEREGISTRY.unregisterTrace(); } // measure after successful execution CTRLINST.newMonitoringRecord(new AfterOperationEvent(TIME.getTime(), traceId, trace.getNextOrderId(), signature, clazz)); }
CTRLINST.newMonitoringRecord(new AfterOperationEvent(TIME.getTime(), traceId, trace.getNextOrderId(), operationSignature, clazz)); return retval;
CTRLINST.newMonitoringRecord(new AfterOperationEvent(TIME.getTime(), traceId, trace.getNextOrderId(), operationSignature, clazz)); return retval;
CTRLINST.newMonitoringRecord(new AfterOperationEvent(TIME.getTime(), traceId, trace.getNextOrderId(), operationSignature, clazz)); return retval;
CTRLINST.newMonitoringRecord(new AfterOperationEvent(TIME.getTime(), traceId, trace.getNextOrderId(), operationSignature, clazz)); return retval;
@AfterReturning("monitoredOperation() && notWithinKieker()") public void afterReturningOperation(final StaticPart jpStaticPart) { if (!CTRLINST.isMonitoringEnabled()) { return; } final String operationSignature = this.signatureToLongString(jpStaticPart.getSignature()); if (!CTRLINST.isProbeActivated(operationSignature)) { return; } final TraceMetadata trace = TRACEREGISTRY.getTrace(); final String typeName = jpStaticPart.getSignature().getDeclaringTypeName(); CTRLINST.newMonitoringRecord(new AfterOperationEvent(TIME.getTime(), trace.getTraceId(), trace.getNextOrderId(), operationSignature, typeName)); }
@AfterReturning("monitoredOperation() && notWithinKieker()") public void afterReturningOperation(final StaticPart jpStaticPart) { if (!CTRLINST.isMonitoringEnabled()) { return; } final String operationSignature = this.signatureToLongString(jpStaticPart.getSignature()); if (!CTRLINST.isProbeActivated(operationSignature)) { return; } final TraceMetadata trace = TRACEREGISTRY.getTrace(); final String typeName = jpStaticPart.getSignature().getDeclaringTypeName(); CTRLINST.newMonitoringRecord(new AfterOperationEvent(TIME.getTime(), trace.getTraceId(), trace.getNextOrderId(), operationSignature, typeName)); }
/** * Tests the constructor and writeBytes(..) methods of {@link AfterOperationEvent}. */ @Test public void testSerializeDeserializeBinaryEquals() { final AfterOperationEvent event1 = new AfterOperationEvent(TSTAMP, TRACE_ID, ORDER_INDEX, FQ_OPERATION_SIGNATURE, FQ_CLASSNAME); Assert.assertEquals("Unexpected timestamp", TSTAMP, event1.getTimestamp()); Assert.assertEquals("Unexpected trace ID", TRACE_ID, event1.getTraceId()); Assert.assertEquals("Unexpected order index", ORDER_INDEX, event1.getOrderIndex()); Assert.assertEquals("Unexpected class name", FQ_CLASSNAME, event1.getClassSignature()); Assert.assertEquals("Unexpected operation signature", FQ_OPERATION_SIGNATURE, event1.getOperationSignature()); final WriterListener receiver = new WriterListener(); final IWriterRegistry<String> stringRegistry = new WriterRegistry(receiver); final ByteBuffer buffer = ByteBuffer.allocate(event1.getSize()); event1.serialize(BinaryValueSerializer.create(buffer, stringRegistry)); buffer.flip(); final AfterOperationEvent event2 = new AfterOperationEvent(BinaryValueDeserializer.create(buffer, receiver.getReaderRegistry())); Assert.assertEquals(event1, event2); Assert.assertEquals(0, event1.compareTo(event2)); Assert.assertTrue(UtilityClass.refersToSameOperationAs(event1, event2)); }
@Test public void testRecordConstructionWithFactory() { final WriterListener receiver = new WriterListener(); final IWriterRegistry<String> writerRegistry = new WriterRegistry(receiver); final String recordClassName = AfterOperationEvent.class.getName(); final IRecordFactory<? extends IMonitoringRecord> recordFactory = this.cachedRecordFactories.get(recordClassName); Assert.assertEquals(AfterOperationEventFactory.class, recordFactory.getClass()); final String operationSignature = "isEmpty()"; final String classSignature = "java.util.List"; final int orderIndex = 333; final long traceId = 666; final long timestamp = 111; final AfterOperationEvent expectedEvent = new AfterOperationEvent(timestamp, traceId, orderIndex, classSignature, operationSignature); expectedEvent.serialize(BinaryValueSerializer.create(this.buffer, writerRegistry)); this.buffer.flip(); final IMonitoringRecord event = recordFactory.create(BinaryValueDeserializer.create(this.buffer, receiver.getReaderRegistry())); Assert.assertEquals(expectedEvent.getClass(), event.getClass()); final AfterOperationEvent castedEvent = (AfterOperationEvent) event; Assert.assertEquals(expectedEvent.getTimestamp(), castedEvent.getTimestamp()); Assert.assertEquals(expectedEvent.getTraceId(), castedEvent.getTraceId()); Assert.assertEquals(expectedEvent.getOrderIndex(), castedEvent.getOrderIndex()); Assert.assertEquals(expectedEvent.getClassSignature(), castedEvent.getClassSignature()); Assert.assertEquals(expectedEvent.getOperationSignature(), castedEvent.getOperationSignature()); }
/** * Tests the constructor and toArray(..) methods of {@link AfterOperationEvent}. * * Assert that a record instance event1 equals an instance event2 created by serializing event1 to an array event1Array * and using event1Array to construct event2. This ignores a set loggingTimestamp! */ @Test public void testSerializeDeserializeEquals() { final AfterOperationEvent event1 = new AfterOperationEvent(TSTAMP, TRACE_ID, ORDER_INDEX, FQ_OPERATION_SIGNATURE, FQ_CLASSNAME); Assert.assertEquals("Unexpected timestamp", TSTAMP, event1.getTimestamp()); Assert.assertEquals("Unexpected trace ID", TRACE_ID, event1.getTraceId()); Assert.assertEquals("Unexpected order index", ORDER_INDEX, event1.getOrderIndex()); Assert.assertEquals("Unexpected class name", FQ_CLASSNAME, event1.getClassSignature()); Assert.assertEquals("Unexpected operation signature", FQ_OPERATION_SIGNATURE, event1.getOperationSignature()); }
final AfterOperationEvent newEvent = new AfterOperationEvent(originalEvent.getTimestamp(), monitoredTrace.identifier, originalEvent.getOrderIndex(), originalEvent.getOperationSignature(), originalEvent.getClassSignature());
final AfterOperationEvent newEvent = new AfterOperationEvent(originalEvent.getTimestamp(), monitoredTrace.identifier, originalEvent.getOrderIndex(), originalEvent.getOperationSignature(), originalEvent.getClassSignature());