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

  1. Check the serviceTypeCode/name sent in the request matches a type in the registry (check Pinpoint's service-type descriptor files)
  2. Deploy/register the required service-type plugin descriptor on the web server
  3. 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

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


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)