pinpoint-apm/pinpoint · error · IllegalArgumentException
application serviceType not found. code:, name:
Error message
application serviceType not found. code:, name:
What it means
FilteredMapController.findServiceType resolves the ServiceType for a filtered map query from the serviceTypeCode and serviceTypeName request parameters. If neither resolves to a known, non-UNDEFINED ServiceType in the registry, it throws IllegalArgumentException. The registry only knows service types declared by loaded plugin descriptor files.
Solutions
- Check the serviceTypeCode/name sent in the request matches a type in the registry (check Pinpoint's service-type descriptor files)
- Deploy/register the required service-type plugin descriptor on the web server
- Fix the client to send a defined code (e.g. 1010 SPRING_BOOT) and correct name together
Example fix
// before GET /getFilteredServerMapData?serviceTypeName=SrpingBoot&serviceTypeCode=1210 // after GET /getFilteredServerMapData?serviceTypeName=SPRING_BOOT&serviceTypeCode=1210
Defensive patterns
Strategy: validation
Validate before calling
ServiceType st = serviceTypeRegistryService.findServiceTypeByName(serviceTypeName);
if (st == null || ServiceType.UNDEFINED.equals(st)) {
throw new IllegalArgumentException("Unknown serviceType: " + serviceTypeName);
} Try / catch
try {
map = filteredMapService.getServerMap(...);
} catch (IllegalArgumentException e) {
if (e.getMessage().startsWith("application serviceType not found")) {
// return 400 to client listing valid service types
} else throw e;
} Prevention
- Send both serviceTypeCode and serviceTypeName from the same source (e.g. Pinpoint UI constants)
- Verify custom service type plugins are installed on web AND collector
- After upgrading agents, confirm the web module's service-type descriptors include any new codes
When it happens
Trigger: Calling /getFilteredServerMapData with a serviceTypeCode that no plugin declares, a serviceTypeName not in the registry, or values that resolve to ServiceType.UNDEFINED; also empty code+name when parameters are omitted.
Common situations: Custom service type plugins not deployed to the Pinpoint web/server classpath, typos in serviceTypeName, agent SDK versions introducing a new service type the web module doesn't know, missing service-type.yml entries.
Understand the failure class
Background: 'Could not be found', 'does not exist', 'not found in database': the resource-not-found family when an ID, slug, key, or URI lookup comes back empty — this error's family across 20 libraries.
Related errors
- filter resolve fail:
- Invalid or undefined service type for application:
- unsupported filter type
- agentStartTimeIndex not found
- Cannot add an existing column family :
AI-assisted analysis of pinpoint-apm/pinpoint@744c3d3075 (2026-09-07).
Data as JSON: /api/errors/fc93e0771700ff93.
Report an issue: GitHub.
Appendix: source
Thrown at web/src/main/java/com/navercorp/pinpoint/web/applicationmap/controller/FilteredMapController.java:178
private Range toRange(RangeForm rangeForm) {
return Range.between(rangeForm.getFrom(), rangeForm.getTo());
}
private ServiceType findServiceType(Integer serviceTypeCode, String serviceTypeName) {
if (serviceTypeCode != null) {
ServiceType serviceTypeFromCode = serviceTypeRegistryService.findServiceType(serviceTypeCode);
if (serviceTypeFromCode != null && !ServiceType.UNDEFINED.equals(serviceTypeFromCode)) {
return serviceTypeFromCode;
}
}
if (serviceTypeName != null) {
ServiceType serviceTypeFromName = serviceTypeRegistryService.findServiceTypeByName(serviceTypeName);
if (serviceTypeFromName != null && !ServiceType.UNDEFINED.equals(serviceTypeFromName)) {
return serviceTypeFromName;
}
}
throw new IllegalArgumentException("application serviceType not found. code:" + serviceTypeCode + ", name:" + serviceTypeName);
}
}
View on GitHub (pinned to 744c3d3075)