Brief explanation about Agent auto naming.

Document ID : KB000125448
Last Modified Date : 29/01/2019
Show Technical Document Details
Introduction:
This document intent to give a brief explanation about Agent auto naming and some actions that you can take.
Environment:
Any Introscope release.
Instructions:

Although you have agentAutoNaming set to true, that is only valid for certain application servers (WebSphere, Weblogic, Jboss) and then it needs configuration for that to work (as per the Java Agent documentation)

We are relying on mechanisms in these app servers to get the name information back. If all else fails, the agent will fall back on AgentName, so if all agents are using the same profile, a value %n is appended to the second, third, fourth etc  agent so you get unique information

Assuming these processes have separate JVM startup parameters you could do a few things.

1) Make separate copies of the IntroscopeAgent.profile with unique names and specify the name in this value if uncommented.

#introscope.agent.agentName=AgentName

in this case you should update the JVM parameters to point to the separate profiles.

 

2) Again assuming there is separate JVM parameters, you can specify the name directly there

So it would be something like -javaagent:<path to Agent.jar> -Dcom.wily.introscope.agentProfile=<path to agent Profile> -Dintroscope.agent.agentName=myagent1

 

3) If each instance has some specific Java property that is unique to it you could use this property in the agent profile

introscope.agent.agentNameSystemPropertyKey=

For example, if you look in the agent log, you can see all the properties used by the JVM, and just purely for example, we find this encoding value

8/14/15 11:56:49 AM BST [INFO] [IntroscopeAgent.Properties] file.encoding=Cp1252

you could then configure the agent profile like this

introscope.agent.agentNameSystemPropertyKey=file.encoding

and the agent would get the name of Cp1252.

NET AGENT

If these are .NET processes, it is more normal to have multiple processes, particularly where you have multiple worker processes in the same app pool, but it is rare that the naming feature does not discover a different name to AgentName.