{"record":{"id":"633fec9176e02b92","repo":"pinpoint-apm/pinpoint","slug":"agentpath-not-found-path","errorCode":null,"errorMessage":"AgentPath not found path:","messagePattern":"AgentPath not found path:","errorType":"console","errorClass":null,"httpStatus":null,"severity":"warning","filePath":"agent-module/bootstraps/bootstrap/src/main/java/com/navercorp/pinpoint/bootstrap/PinpointBootStrap.java","lineNumber":84,"sourceCode":"    private final String agentArgs;\n    private final Instrumentation instrumentation;\n\n    private PinpointBootStrap(String agentArgs, Instrumentation instrumentation) {\n        this.agentArgs = agentArgs;\n        this.instrumentation = Objects.requireNonNull(instrumentation, \"instrumentation\");\n    }\n\n\n    private void start() {\n        logger.info(\"pinpoint agentArgs:\" + agentArgs);\n        logger.info(\"PinpointBootStrap.ClassLoader:\" + PinpointBootStrap.class.getClassLoader());\n        logger.info(\"ContextClassLoader:\" + Thread.currentThread().getContextClassLoader());\n\n        final JavaAgentPathResolver javaAgentPathResolver = JavaAgentPathResolver.newJavaAgentPathResolver();\n        final Path agentPath = javaAgentPathResolver.resolveJavaAgentPath();\n        logger.info(\"JavaAgentPath:\" + agentPath);\n        if (!Files.exists(agentPath)) {\n            logger.warn(\"AgentPath not found path:\" + agentPath);\n        }\n\n        if (Object.class.getClassLoader() != PinpointBootStrap.class.getClassLoader()) {\n            // TODO bug : location is null\n            logger.warn(\"Invalid pinpoint-bootstrap.jar:\" + agentArgs);\n            return;\n        }\n\n        final Map<String, String> agentArgsMap = argsToMap(agentArgs);\n\n        final ClassPathResolver classPathResolver = new AgentDirBaseClassPathResolver(agentPath);\n\n        final AgentDirectory agentDirectory = resolveAgentDir(classPathResolver);\n        if (agentDirectory == null) {\n            logger.warn(\"Agent Directory Verify fail. skipping agent loading.\");\n            logPinpointAgentLoadFail();\n            return;\n        }","sourceCodeStart":66,"sourceCodeEnd":102,"githubUrl":"https://github.com/pinpoint-apm/pinpoint/blob/744c3d3075e595656abb1ae331ad2c0e4c9eb996/agent-module/bootstraps/bootstrap/src/main/java/com/navercorp/pinpoint/bootstrap/PinpointBootStrap.java#L66-L102","documentation":"During bootstrap start, the agent resolves the path of pinpoint-bootstrap.jar from the javaagent command-line argument and checks it exists on disk. If not, a warning is logged. The load usually fails shortly after (dependency jars can't be located), so this points to an agent installation path problem.","triggerScenarios":"The jar passed to -javaagent was moved/renamed/deleted after JVM start parameter capture; a relative path that no longer resolves; agent directory restructured by an upgrade; the jar lives inside a container image layer that was pruned.","commonSituations":"Upgrading Pinpoint while the old JVM process is still running; mounting the agent dir at a different path in Docker than the -javaagent argument assumes; typos or spaces in the -javaagent path; fat-jar bundling that repackages the bootstrap jar.","solutions":["Verify the path printed in the warning exists on the host and is readable by the JVM user","Fix the -javaagent argument to an absolute path to pinpoint-bootstrap.jar","Ensure the full agent directory (not just the bootstrap jar) is present next to the jar","Restart the application after fixing the path — the agent path is captured at JVM launch"],"exampleFix":"// before\njava -javaagent:./pinpoint-agent/pinpoint-bootstrap.jar -jar app.jar\n// after\njava -javaagent:/opt/pinpoint-agent/pinpoint-bootstrap.jar -jar app.jar","handlingStrategy":"validation","validationCode":"// shell: before launching\nAGENT_JAR=/opt/pinpoint-agent/pinpoint-bootstrap.jar\n[ -f \"$AGENT_JAR\" ] || echo \"agent jar missing: $AGENT_JAR\"","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Use absolute paths for -javaagent","Mount the full agent directory at a fixed path in containers","Recreate the JVM (not just the agent) after moving files, since the path is captured at launch"],"tags":["java","javaagent","path","deployment"],"backgroundTag":"file-not-found","analyzedSha":"744c3d3075e595656abb1ae331ad2c0e4c9eb996","analyzedAt":"2026-09-07T18:48:45.289Z","contentChangedAt":"2026-09-07T18:48:45.289Z","schemaVersion":2},"datasetVersion":"2026-09-14T11:17:12.474Z"}