Questions about transaction

Kibana version: 7.5

Elasticsearch version: 7.5

APM Server version: 7.5

APM Agent language and version: Java 1.x, Jboss 7.2

standalone.bat.conf:

set JAVA_OPTS=%JAVA_OPTS% -javaagent:C:/APM-Agent/elastic-apm-agent-1.12.0.jar
set JAVA_OPTS=%JAVA_OPTS% -Delastic.apm.service_name=idit-manual-agent-standalone
set JAVA_OPTS=%JAVA_OPTS% -Delastic.apm.application_packages=com.idit
set JAVA_OPTS=%JAVA_OPTS% -Delastic.apm.server_urls=http://xxxxx.com:8200

Browser version: chrome

I have questions regarding transactions:

  1. 'View Full Trace' button is disabled, although I configured application_packages=com.idit,
    com.idit is our root package
  2. Is there option to group transactions by one of url parameters? please see url.full, is it possible to display the transaction grouped by subActionName for example?

thanks!

This button is only relevant for distributed traces, which are only relevant if you trace multiple services, and only when you drill down to a specific trace. You can see more details in our span timeline documentation.

Since this is part of the query string, I believe the best approach would be to override the transaction name assigned by the agent. You can do that in as ServletFilter you add, or within your sevlet code, or anywhere else during the transaction handling. Learn how to add our API jar as a dependency, then all you need to do is get the current transaction and set its name.

@Eyal_Koren thanks!
so for monolithic application, how I can see the stack trace? according to config-application-packages I should see our code from Kibana ...

Stack trace is part of the details of a span. Please see the same span timeline documentation above.
I suggest you go over this entire documentation, as well as the Java agent documentation to get a better idea of terminology, what we support and all the existing configuration options.

@Eyal_Koren thanks, now stack trace is displayed.

Can you please explain a bit more on the set transaction name?
I see that there is an option to override the name of the current transaction by calling ElasticApm.currentTransaction().setName(), but from which method I should do this setting? as I understand I should override/implement a specific method is called by APM-Agent and set name there, which method it is?

Currently, all our online actions are displayed under below transaction so it's meaningless,
image

as I wrote I look for an option to set the Transaction name by attributes from Transaction Metadata so that each transaction will be displayed separately

You can call ElasticApm.currentTransaction() from any method on the thread that handles the request. You can do that from within your JSP code, or any method called as a result of the JSP execution.

This topic was automatically closed 20 days after the last reply. New replies are no longer allowed.