How do I find the ARMS agent logs?
By default, logs are at ${agent root directory}/logs/${pid}_${ip}.log.
The agent root directory depends on the installation method:
| Installation method | Agent root directory |
|---|---|
| Container or Enterprise Distributed Application Service (EDAS) | /home/admin/.opt/ArmsAgent/ or /home/admin/.opt/AliyunJavaAgent |
| Manual install | The directory where the agent package was downloaded and decompressed |
If you are unsure how the agent was installed, run the following command to locate the -javaagent parameter in the process startup command:
ps -ef | grep javaFor example, if the output contains -javaagent:/home/zhangsan/agent/arms-bootstrap-1.7.0-SNAPSHOT.jar, the agent root directory is /home/zhangsan/agent.
If you set the startup parameter -DJM.LOG.PATH=xxx, logs are at ${JM.LOG.PATH}/${pid}_${ip}.log instead.
Why is the ARMS agent not reporting data?
Use the following steps to identify the cause.
Step 1: Verify that the agent started
Check the standard output logs for one of these startup messages:
| Agent version | Expected log message |
|---|---|
| v3.x | (AliyunJavaAgentBootstrap) arms agent start cost |
| v4.x | Aliyun Java Agent start cost |
If neither message appears, the agent failed to mount or a precheck failed. Check the logs for details. For example,
Aliyun Java Agent requires minimal memory of 200Mindicates insufficient memory.If the exception
java.security.NoSuchAlgorithmException: DES KeyGenerator not availableappears, upgrade to the ARMS agent v4.x.If a different exception appears, submit a ticket.
For log file locations, see How do I find the ARMS agent logs?.
Step 2: Check the region and network
If the agent started successfully:
Region: Search for
regionIdin the agent logs. Confirm it matches the region selected in the Application Real-Time Monitoring Service (ARMS) console.Network: Look for network connectivity errors in the agent logs. If present, see Network configurations required by the ARMS agent for Java.
Traffic: Confirm that the application is receiving requests. The agent only reports data when traffic is present.
Step 3: Contact support
If the issue persists, submit a ticket.
Can I set a uniform agent version for an entire Kubernetes cluster?
Yes. Rather than specifying a version per Deployment, submit a ticket or contact technical support to set a cluster-wide agent version.
Why does the ARMS agent produce no data when the Pinpoint agent is also mounted?
The behavior depends on the ARMS agent version:
| Agent version | Compatibility with Pinpoint |
|---|---|
| v3.x | Built on the Pinpoint Agent. The two are mutually exclusive -- only one can be mounted at a time. |
| v4.x | Built on the OpenTelemetry Java agent. Can coexist with the Pinpoint agent, though compatibility is not guaranteed. |
Solution: Upgrade to agent v4.x or remove the Pinpoint agent.
How do I fix java.lang.NoSuchMethodError: org.springframework.http.HttpStatus?
Affected versions: ARMS agent earlier than v3.2.0
Conditions: Both of the following are true:
The agent was installed through Enterprise Distributed Application Service (EDAS).
The
-Dedas.scg.enablefeature is enabled.
Cause: The filter com.navercorp.pinpoint.plugin.reactive.filter.AccessLogFilte is automatically added to the filter chain and is incompatible with Spring Boot 3.x.
Solution: Upgrade the ARMS agent to v3.2.0 or later.
What does "logContent rate limit count" mean in the agent logs?
The agent is throttling its own log output to protect application performance. This is expected behavior, not an error. No action is required.