From b9f3004cbd91bad64283e9c7a97196a2ff616131 Mon Sep 17 00:00:00 2001 From: Ben Donnelly Date: Wed, 20 Dec 2023 17:18:19 +0000 Subject: [PATCH 1/3] feat(tracing): add initial tracing implementation - add options to wrap methods - add trace provider for otel - add metric processor for otel - add example for otel --- .idea/encodings.xml | 4 + .idea/inspectionProfiles/Project_Default.xml | 2 +- .idea/misc.xml | 5 +- .../deep/agent/api/plugin/ITraceProvider.java | 51 +++ .../deep/agent/api/spi/IDeepPlugin.java | 2 + agent/pom.xml | 6 + .../deep/agent/settings/Settings.java | 15 + .../agent/tracepoint/handler/Callback.java | 41 ++ .../TracepointInstrumentationService.java | 2 +- .../tracepoint/inst/asm/TransformerUtils.java | 15 +- .../agent/tracepoint/inst/asm/Visitor.java | 389 ++++++++++++++++-- .../deep/agent/types/TracePointConfig.java | 5 + .../com/intergral/deep/ProxyCallback.java | 16 + ...m.intergral.deep.agent.api.spi.IDeepPlugin | 2 + .../tracepoint/inst/asm/VisitorTest.java | 92 +++++ deep/pom.xml | 6 + ...m.intergral.deep.agent.api.spi.IDeepPlugin | 2 +- examples/otel-example/pom.xml | 86 ++++ .../com/intergral/deep/examples/BaseTest.java | 50 +++ .../com/intergral/deep/examples/Main.java | 163 ++++++++ .../intergral/deep/examples/SimpleTest.java | 88 ++++ examples/pom.xml | 1 + examples/prometheus-metrics-example/pom.xml | 6 - .../com/intergral/deep/examples/Main.java | 2 +- plugins/otel-plugin/pom.xml | 70 ++++ .../com/intergral/deep/plugin/OtelPlugin.java | 184 +++++++++ plugins/pom.xml | 1 + 27 files changed, 1271 insertions(+), 35 deletions(-) create mode 100644 agent-api/src/main/java/com/intergral/deep/agent/api/plugin/ITraceProvider.java rename deep/src/main/{java => }/resources/META-INF/services/com.intergral.deep.agent.api.spi.IDeepPlugin (93%) create mode 100644 examples/otel-example/pom.xml create mode 100644 examples/otel-example/src/main/java/com/intergral/deep/examples/BaseTest.java create mode 100644 examples/otel-example/src/main/java/com/intergral/deep/examples/Main.java create mode 100644 examples/otel-example/src/main/java/com/intergral/deep/examples/SimpleTest.java create mode 100644 plugins/otel-plugin/pom.xml create mode 100644 plugins/otel-plugin/src/main/java/com/intergral/deep/plugin/OtelPlugin.java diff --git a/.idea/encodings.xml b/.idea/encodings.xml index 8f5c7ff..8b3bd0a 100644 --- a/.idea/encodings.xml +++ b/.idea/encodings.xml @@ -13,6 +13,8 @@ + + @@ -27,6 +29,8 @@ + + diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml index d1d8003..1bdd182 100644 --- a/.idea/inspectionProfiles/Project_Default.xml +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -2,7 +2,7 @@