APM - How to instrument .NET Core app running in Kubernetes without using UMA
search cancel

APM - How to instrument .NET Core app running in Kubernetes without using UMA

book

Article ID: 270698

calendar_today

Updated On:

Products

DX Application Performance Management APM CA Application Performance Management (APM / Wily / Introscope) DX APM SaaS

Issue/Introduction

Is it possible to build simple container holding DX-APM .NET Core agent on top of 3rd party supplied application container without using UMA? 

Environment

  • DX APM SAAS
  • DX APM 2X

Resolution

Manually include the following in your App Dockerfile:
 
# Add agent
ENV CORECLR_ENABLE_PROFILING=1 \
     CORECLR_PROFILER={5F048FC6-251C-4684-8CCA-76047B02AC98} \
         CORECLR_PROFILER_PATH_64=/home/agent/wily/bin/wily.NativeProfiler.so \
             com.wily.introscope.AgentProfile=/home/agent/wily/IntroscopeAgent.profile \
                 agentManager.url.1=localhost:5001
 
NOTES
The above one assumes that the .NET agent is copied into the container image at /home/agent/wily
Change the agentManager.url.1
Change the agentManager.credential as well if needed.
 
 
EXAMPLE:
FROM aspnetapparnw:6.0
 
RUN mkdir -p /home/agent/wily
ADD DotNET_Linux_2023.6.1.5.tar.gz /home/agent/wily
 
ENV CORECLR_ENABLE_PROFILING=1 \
    CORECLR_PROFILER={5F048FC6-251C-4684-8CCA-76047B02AC98} \
    CA_APM_MONITORING_ENABLED=true \
    CORECLR_PROFILER_PATH_64=/home/agent/wily/dotnetagent/bin/wily.NativeProfiler.so \
    com.wily.introscope.AgentProfile=/home/agent/wily/dotnetagent/IntroscopeAgent.profile \
    agentManager.url.1=wss://<YOUR-apm-endpooint>:443 \
    agentManager.credential=<YOUR-credentials> \
    introscope.agent.hostName=<MYLAB> \
    introscope.agent.customProcessName=<XXX> \
    introscope.agent.agentName=DotNETAPP

Additional Information