pinpoint-apm/pinpoint · error · RuntimeException

service access fail. Caused by

Error message

service access fail. Caused by:${ex.getMessage()}

What it means

Wraps an IllegalAccessException from Field.get in StaticFieldLookUp.getObject: the JVM denied reflective access to a static field (Java module access rules or non-public field without setAccessible), so the traced service's static field could not be read.

Solutions

  1. Add the required opens/add-opens JVM flags for the package containing the field
  2. Verify the plugin declaring the lookup matches the target class's visibility rules
  3. Catch and skip the lookup gracefully when the field is optional
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at commons-profiler/src/main/java/com/navercorp/pinpoint/common/profiler/trace/StaticFieldLookUp.java:107 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of pinpoint-apm/pinpoint@744c3d3075 (2026-09-07). Data as JSON: /api/errors/247334d01372a680. Report an issue: GitHub.

Appendix: source

Thrown at commons-profiler/src/main/java/com/navercorp/pinpoint/common/profiler/trace/StaticFieldLookUp.java:107

                if (filter.filter(type) == Filter.FILTERED) {
                    continue;
                }

                lookup.add(type);
            }
        }
        return lookup;
    }

    public List<T> lookup() {
        return lookup(new BypassFilter<T>());
    }

    private Object getObject(Field field) {
        try {
            return field.get(findClazz);
        } catch (IllegalAccessException ex) {
            throw new RuntimeException("service access fail. Caused by:" + ex.getMessage(), ex);
        }
    }



}

View on GitHub (pinned to 744c3d3075)