elastic-apm-mule3-agent icon indicating copy to clipboard operation
elastic-apm-mule3-agent copied to clipboard

Support for multiple service names for Mule apps running in the same JVM

Open michaelhyatt opened this issue 5 years ago • 4 comments

Requires support in Java APM agent

michaelhyatt avatar Mar 27 '19 00:03 michaelhyatt

@michaelhyatt , is this applying to the mule runtime manager which allowing multiple apps being deployed to the same server?

tomqwu avatar May 14 '20 13:05 tomqwu

Yes, if you are using Mule domain-based projects, the APM agent configuration is done at the domain level and all the Mule domain projects are deployed and running as part of the same JVM will have the same service name, as per elastic.apm.service_name property.

So the workaround is to use more descriptive top-level flow names to create separate transactions for different Mule projects running within the same domain.

michaelhyatt avatar May 15 '20 00:05 michaelhyatt

thank you, that's a relief for us so we know it will work in multiple domain apps under the same runtime agent container.

Should the APM agent lib dependencies and tracer XML spring bean be installed to domain level and only change the top-level flow name per app?

And lastly, do we need to put the config in the parent project instead of each app project?

tomqwu avatar May 15 '20 15:05 tomqwu

Check out the sample app https://github.com/michaelhyatt/elastic-apm-mule3-agent/tree/master/example-domain-app

Everything is declared in the domain project, so dependant projects can remain tracer agnostic.

michaelhyatt avatar May 16 '20 04:05 michaelhyatt