AppDynamics 中的异常 JAVA Elasticsearch 代理

Exception in AppDynamics JAVA Agent for Elasticsearch

我正在尝试为 Elasticsearch 7.9.3 (Docker) 版本配置 AppDynamics Java 代理。代理已在 AppDynamics 中注册,但代理状态正在显示。

在 AppDynamics 日志中,我可以看到以下错误。

2021 年 10 月 3 日 14:47:24,169 警告 Java代理 - 异常捕获:java.lang.NoClassDefFoundError:com/singularity/ee/agent/appagent/services/transactionmonitor/common/activity/CustomActivityUtil

2021 年 10 月 3 日 14:47:24,171 警告 Java代理 - 异常捕获:java.lang.NoClassDefFoundError:com/singularity/ee/agent/appagent/services/agentdiagnostics/safety/ErrorClassKey

2021 年 10 月 3 日 14:47:24,665 警告 Java代理 - 捕获异常:java.lang.NoClassDefFoundError:com/singularity/ee/agent/appagent/services/transactionmonitor/e2elatency/E2ELatencyUtil

我无法为此找到解决方案,正在寻找任何建议。

尝试使用以下授权更新您的 java.policy / default.policy 文件

grant {
  permission java.io.FilePermission "/opt/appdynamics/java-agent/-", "read,write,execute,delete";
  permission java.lang.reflect.ReflectPermission "suppressAccessChecks";
  permission java.util.PropertyPermission "appdynamics.enable.field.injection", "read";
  permission java.util.PropertyPermission "appdynamics.agent.enablesop", "read";
  permission java.lang.RuntimePermission "getClassLoader";
  permission java.lang.management.ManagementPermission "monitor";
};

编辑以根据 OP 的评论概括建议:

更一般地说,记录的错误可以转化为进一步的附加权限配置,例如对于:

WARN BCIFixer - Error matching class [org.apache.logging.log4j.core.appender.rolling.action.DeleteAction] [access denied ("java.lang.RuntimePermission" "accessDeclaredMembers")]

添加:

permission java.lang.RuntimePermission "accessDeclaredMembers";