Support parameter substitution in the special sensors

Description

In the we moved the new way of assigning/instrumenting special sensors.. However, we need to also to support ability to substitute the parameter value (beside return value).. This is needed asap for the end user monitoring () as we need to change the Response object passed to the servlet/filter..

It's a fairly small work on top of the INSPECTIT-2222.

Environment

None

Activity

Show:
Technical User
November 25, 2016, 11:25 AM

SUCCESS: Integrated in

inspectIT - Integration #229
INSPECTIT-2226: Special sensors to be able to substitute parameter (patrice.bouillet: b6d43c41ba4eb581202556dda408614dc5b1a006)

  • (edit) inspectit.shared.all/src/main/java/rocks/inspectit/shared/all/serializer/impl/SerializationManager.java

  • (edit) inspectit.agent.java/src/test/java/rocks/inspectit/agent/java/instrumentation/asm/SpecialMethodInstrumenterTest.java

  • (edit) inspectit.agent.java/src/main/java/rocks/inspectit/agent/java/instrumentation/asm/SpecialMethodInstrumenter.java

  • (edit) inspectit.agent.java/src/main/java/rocks/inspectit/agent/java/hooking/IHookDispatcher.java

  • (edit) inspectit.agent.java/src/test/java/rocks/inspectit/agent/java/instrumentation/asm/InstrumentationTestClass.java

  • (add) inspectit.shared.all/src/main/java/rocks/inspectit/shared/all/instrumentation/config/impl/SubstitutionDescriptor.java

  • (edit) inspectit.agent.java/src/main/java/rocks/inspectit/agent/java/instrumentation/asm/IInstrumenterConstant.java

  • (edit) inspectit.server/src/main/java/rocks/inspectit/server/instrumentation/config/applier/SpecialInstrumentationApplier.java

  • (edit) inspectit.agent.java/src/test/java/rocks/inspectit/agent/java/instrumentation/asm/AbstractInstrumentationTest.java

  • (edit) inspectit.agent.java/src/main/java/rocks/inspectit/agent/java/instrumentation/InstrumenterFactory.java

  • (edit) inspectit.server/src/test/java/rocks/inspectit/server/instrumentation/config/applier/SpecialInstrumentationApplierTest.java

  • (edit) inspectit.agent.java/src/main/java/rocks/inspectit/agent/java/hooking/ISpecialHook.java

  • (edit) inspectit.shared.cs/src/main/java/rocks/inspectit/shared/cs/ci/sensor/method/special/impl/ClassLoadingDelegationSensorConfig.java

  • (edit) inspectit.shared.cs/src/main/java/rocks/inspectit/shared/cs/ci/sensor/method/special/impl/MBeanServerInterceptorSensorConfig.java

  • (edit) inspectit.agent.java/src/test/java/rocks/inspectit/agent/java/instrumentation/asm/InstrumenterFactoryTest.java

  • (edit) inspectit.shared.all/src/main/java/rocks/inspectit/shared/all/instrumentation/config/impl/SpecialInstrumentationPoint.java

  • (edit) inspectit.shared.cs/src/main/java/rocks/inspectit/shared/cs/ci/sensor/method/special/AbstractSpecialMethodSensorConfig.java

Ivan Senic
November 8, 2016, 10:12 AM

As agreed with we will add the afterBody calls also on the exceptions, cause his special sensors need to be informed when method is exited always (not only on normal return). I'll update the code and tests.

Ivan Senic
October 21, 2016, 1:30 PM

PR not created yet due to the blocking ticket..
Thanks for the discussion/help..
P.S. Call me the ASM god

Fixed

Assignee

Ivan Senic

Reporter

Ivan Senic

Integrator

Patrice Bouillet