.NET PerfMonCollectorAgent is not reporting all the expected perfmon metrics

Document ID : KB000016587
Last Modified Date : 14/02/2018
Show Technical Document Details
Question:

After upgrading the .NET agent, several perfmon metrics such as "_Total" CPU metrics as missing under PerfMonCollectorAgent node in the Investigator. 

Environment:
.NET agent
Answer:

Recommendations:

1) Check if the Agents or EM (Collector or Standalone EM) metric reporting have been clamped:

To check the Agent clamp open the investigator and expand the branch:

 Custom Metric Host (virtual)
   - Custom Metric Process (virtual)
      - Custom Metric Agent (virtual)(collector_host@port)(SuperDomain)
         - Agents
            - Host
               - Process
                   - AgentName

looks at the values for : "is Clamped" metric

To check the EM clamps open the investigator and expand the branch:

 Custom Metric Host (virtual)
   - Custom Metric Process (virtual)
      - Custom Metric Agent (virtual)(collector_host@port)(SuperDomain)
         - Enterprise manager
            - Connections

looks at the values for: 

  - "EM Historical Metric Clamped"
  - "EM Live Metric Clamped"

All the above supportability metrics should be 0, otherwise increase the corresponding clamp(s) in the EM/config/collectors apm-events-thresholds-config.xml file:

introscope.enterprisemanager.metrics.historical.limit
introscope.enterprisemanager.metrics.live.limit
introscope.enterprisemanager.agent.metrics.limit
 

2) Check if the .NET PerfMonCollectorAgent perform metric reporting have been clamped:

Enable VERBOSE logging in the <agent_home>\logging.config.xml

       <level value="VERBOSE"></level>

Edit and save the IntroscopeAgent.profile so the change in the logging.config.xml is trigger immediately

Wait for a couple of minutes and then check if the below message is reported in the logs/IntroscopeAgent.PerfMonCollectorAgent_exe.log:

[VERBOSE] [IntroscopeAgent.PerfMonService] Metric limit of 1000 has been reached

To resolve this clamp condition you have 2 options:

a) uncomment the below property and increase the current clamp as you need to:

#introscope.agent.perfmon.metric.limit=1000

Then, restart the "CA APM PerfMon Collector Service" window service.

b) Adjust and reduce the perfmon agent configuration so it only gather the relevant perform counters:

By default:

introscope.agent.perfmon.metric.filterPattern=|Processor|*|*,|.NET Data Provider*|*|*,|.NET CLR*|{osprocessname}|*,|.NET CLR Data|*|*,|Process|{osprocessname}|*,|ASP.NET*|*

Then, restart the "CA APM PerfMon Collector Service" window service.