private static Annotation doGetAnnotation(Class<?> clazz, Class<? extends Annotation> annotationClass) {
        if (clazz.equals(Object.class)) {
            return null;
        }
        Annotation[] annotations = clazz.getAnnotations();
        for (final Annotation annotation : annotations) {
            if (annotation.annotationType().equals(annotationClass)) {
                return annotation;
            }
        }
        return doGetAnnotation(clazz.getSuperclass(), annotationClass);
    }
The unique function name pattern is {function category}-{function name}.
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/FunctionCategory.java