I have recently started exploring skywalking as APM tool.
I am interested in looking at the time spent by methods/functions at application layer. Basically a instrumentation sort of thing for the JAVA application. With Skywalking I just get 3 spans(methods) that have one root function and two DB execute functions. I tried adding the property
'plugin.jdkthreading.threading_class_prefixes=${THREADING_CLASS_PREFIX=my.package}'
But this dint work. I could still see only 3 spans in the dashboard for the API being hit. Under Profile feature I can get the thread stack. But i am only interested with Hotspot methods. Am i missing something in configuration?
I want classes starting with particular pattern to be instrumented and captured in trace. How can I achieve this? Or is there any other open source APM tool I can start with?
When using
plugin.jdkthreading.threading_class_prefixes=${THREADING_CLASS_PREFIX:my.package}
, please make sure to move thejdk-threading-plugin
underoptional-plugins
folder intoplugins
folder becausejdk-threading-plugin
is disabled by default and you need to move it toplugins
to enable it.In terms of hotspot methods, you have 2 ways:
Use XML-based configuration to instrument your methods, https://github.com/apache/skywalking/blob/2dcf27b79940d60a2e2f19cc7ba9eb9730a463a6/docs/en/setup/service-agent/java-agent/Customize-enhance-trace.md#L1
Programmatically instrument your methods by using
api-toolkit-trace
SDK, like this: