{"record":{"id":"7b7d9aed485e9d26","repo":"pinpoint-apm/pinpoint","slug":"applicationname-not-provided","errorCode":null,"errorMessage":"ApplicationName not provided","messagePattern":"ApplicationName not provided","errorType":"validation","errorClass":"ObjectNameValidationFailedException","httpStatus":null,"severity":"error","filePath":"agent-module/profiler/src/main/java/com/navercorp/pinpoint/profiler/name/v1/ObjectNameResolverV1.java","lineNumber":78,"sourceCode":"        ObjectNameFilter filter = new ObjectNameFilter(agentPropertyList);\n\n        // required\n        ObjectNameProperty agentIdField = filter.resolve(AgentProperties::getAgentId, idValidator::validateAgentId);\n        String agentId;\n        if (!agentIdField.hasLengthValue()) {\n            logger.info(\"Failed to resolve AgentId(-Dpinpoint.agentId)\");\n            agentId = base64Uid();\n            logger.info(\"Auto generate AgentId='{}'\", agentId);\n        } else {\n            agentId = agentIdField.getValue();\n            resolveLog(agentIdField);\n        }\n\n        // required\n        final ObjectNameProperty applicationName = filter.resolve(AgentProperties::getApplicationName, idValidator::validateApplicationName);\n        if (!applicationName.hasLengthValue()) {\n            logger.warn(\"Failed to resolve ApplicationName(-Dpinpoint.applicationName)\");\n            throw new ObjectNameValidationFailedException(AgentIdType.ApplicationName, \"ApplicationName not provided\");\n        } else {\n            resolveLog(applicationName);\n        }\n\n        // optional\n        final ObjectNameProperty agentName = filter.resolve(AgentProperties::getAgentName, idValidator::validateAgentName);\n        if (!agentName.hasLengthValue()) {\n            logger.info(\"No AgentName(-Dpinpoint.agentName) provided, it's optional!\");\n        } else {\n            resolveLog(agentName);\n        }\n        String agentNameStr = agentName.getValue();\n        if (StringUtils.isEmpty(agentNameStr)) {\n            agentNameStr = agentId;\n        }\n        return new ObjectNameV1(agentId, agentNameStr, applicationName.getValue());\n    }\n","sourceCodeStart":60,"sourceCodeEnd":96,"githubUrl":"https://github.com/pinpoint-apm/pinpoint/blob/744c3d3075e595656abb1ae331ad2c0e4c9eb996/agent-module/profiler/src/main/java/com/navercorp/pinpoint/profiler/name/v1/ObjectNameResolverV1.java#L60-L96","documentation":"ObjectNameResolverV1.resolve() requires the application name to be supplied via system property -Dpinpoint.applicationName. When the resolved property is absent or fails validation (length check), the resolver throws ObjectNameValidationFailedException because the agent cannot be uniquely identified without an application name.","triggerScenarios":"Starting the Pinpoint agent without -Dpinpoint.applicationName (v1 naming mode), or supplying one that fails AgentIdValidator validation (empty, too long, invalid characters).","commonSituations":"Missing or mistyped JVM startup flag (-Dpinpoint.applicationName spelled wrong); application name exceeding the configured max length; whitespace-only value; migration to v1 name resolver without updating launch scripts.","solutions":["Add -Dpinpoint.applicationName=<name> to the JVM arguments of the profiled application","Ensure the value is non-empty and within the allowed length/character set of the id validator","Check for typos or conflicting properties in agent config (pinpoint.config vs system properties)","Wrap agent startup in validation that checks required pinpoint properties before boot"],"exampleFix":"// before\njava -jar app.jar\n// after\njava -Dpinpoint.applicationName=myApp -jar app.jar","handlingStrategy":"validation","validationCode":"String appName = System.getProperty(\"pinpoint.applicationName\");\nif (appName == null || appName.trim().isEmpty() || appName.length() > 24) {\n    throw new IllegalArgumentException(\"set -Dpinpoint.applicationName before starting the agent\");\n}","typeGuard":null,"tryCatchPattern":"try {\n    agentNameResolver.resolve();\n} catch (ObjectNameValidationFailedException e) {\n    logger.error(\"Agent identity invalid ({}): provide -Dpinpoint.applicationName\", e.getPropertyType());\n}","preventionTips":["Add required pinpoint.* flags to a shared launch template","Validate properties in startup scripts before launching the JVM","Keep application names within the validator's length limits","Grep deployment manifests for pinpoint.applicationName during release checks"],"tags":["agent-config","naming","missing-property"],"backgroundTag":"missing-required-config-field","analyzedSha":"744c3d3075e595656abb1ae331ad2c0e4c9eb996","analyzedAt":"2026-09-07T18:48:45.289Z","contentChangedAt":"2026-09-07T18:48:45.289Z","schemaVersion":2},"datasetVersion":"2026-09-17T15:17:12.973Z"}