How to get POD name for Tibco BW agent running on K8s
search cancel

How to get POD name for Tibco BW agent running on K8s

book

Article ID: 381702

calendar_today

Updated On:

Products

DX SaaS

Issue/Introduction

We have a Tibco Bw agent running on K8s environment, where we are looking to update the pod name, we tried all possible option but it did not help.

Multiple efforts were done:

1) JVM Argument (Was told this will not work) 

value: -Xms1024M -Xmx2048M -javaagent:/opt/broadcom/ca-deps/wily/releases/24.5/Agent.jar
            -DagentProfile=/opt/broadcom/ca-deps/wily/releases/24.5/core/config/IntroscopeAgentProd.profile
           -Dintroscope.agent.agentName=${HOSTNAME} -Dintroscope.agent.customProcessName=<process_name>

2) Automatic naming 

https://techdocs.broadcom.com/us/en/ca-enterprise-software/it-operations-management/dx-apm-agents/SaaS/java-agent/configure-java-monitoring/java-agent-naming.html 

   Of all the ways described in the doc links, only the automatic naming will set  explicitly pod name for Agent name 
depending on the Kubernetes object type associated with the container. 

1. Add this line - introscope.agent.agentAutoNamingEnabled=true

2. Remove this line - Dintroscope.agent.agentName="Tibco_Process_Agent"

This did not work. 

Resolution

A clarification of the properties used and expectation of how agent naming works. As per the defect summary and logs,

  1. There are 3 parts to agent name. Ex "Host_name | process_name | agent_name". Please clear on which to configure
  2. The auto naming based on kubernetes object name is for hostname. It doesn't work for agent name.
  3. You used -Dintroscope.agent.agentName property to set agent name but this property is incorrectly being used. This property only works when used inside agent profile.
  4. To set the agent name using java args, you need to use -Dcom.wily.introscope.agent.agentName or -DagentName
  5. To set the hostname, you can use autonaming which uses kubernetes object name. To set manually tuse introscope.agent.hostName property
  6. Your agent is using default profile property introscope.agent.agentName="Java Agent" as agent name

    [INFO] [I.IsengardServerConnectionManager] Connected controllable Agent to the Introscope Enterprise Manager at host.example. com:8082,com.wily.isengard.client.transport.websocket.WebSocketFactory. Host = "<host", Process = "Tibco_Preprod", Agent Name = "Java Agent", Active = "true". 

Agent is already getting hostname from kubernetes object name as per the log.