public MeteredMetricsFilter(MetricRegistry metricRegistry, ResourceInfo resourceInfo) { final Metered annotation = resourceInfo.getResourceMethod().getAnnotation(Metered.class); meter = metricRegistry.meter(chooseName(annotation.name(), annotation.absolute(), resourceInfo.getResourceMethod())); } @Override
final Metered annotation = executeMethod.getAnnotation(Metered.class); final String name = chooseName(annotation.name(), annotation.absolute(), task); taskExecutor = new MeteredTask(taskExecutor, metricRegistry.meter(name));
@Override protected NamingParameters getNamingParameters(MethodDescription instrumentedMethod) { final Metered metered = instrumentedMethod.getDeclaredAnnotations().ofType(Metered.class).loadSilent(); return new NamingParameters(metered.name(), metered.absolute()); }
static String forMeteredMethod(Class<?> klass, Member member, Metered annotation) { return chooseName(annotation.name(), annotation.absolute(), klass, member); }
@Override public boolean isAbsoluteName(Metered annotation) { return annotation.absolute(); }
@Nonnull @Override public String getNameForMetered(@Nonnull Method method, @Nonnull Metered metered) { if (metered.absolute()) { return metered.name(); } if (metered.name().isEmpty()) { return name(method.getDeclaringClass(), method.getName(), METERED_SUFFIX); } return name(method.getDeclaringClass(), metered.name()); }
@Nonnull @Override public String getNameForMetered(@Nonnull Method method, @Nonnull Metered metered) { if (metered.absolute()) { return metered.name(); } if (metered.name().isEmpty()) { return name(method.getDeclaringClass(), method.getName(), METERED_SUFFIX); } return name(method.getDeclaringClass(), metered.name()); }
/** * Factory method for MeteredInvoker. */ private Invoker metered(Invoker invoker, List<Method> meteredMethods) { ImmutableMap.Builder<String, Meter> meters = new ImmutableMap.Builder<>(); for (Method m : meteredMethods) { Metered annotation = m.getAnnotation(Metered.class); final String name = chooseName(annotation.name(), annotation.absolute(), m); Meter meter = metricRegistry.meter(name); meters.put(m.getName(), meter); } return new InstrumentedInvokers.MeteredInvoker(invoker, meters.build()); }
@Nonnull @Override public String getNameForMetered(@Nonnull final Method method, @Nonnull final Metered metered) { if (metered.absolute()) { return metered.name(); } else { return metricName(method, metered.name()); } }
private Meter meterMetric(final MetricRegistry registry, final ResourceMethod method, final Metered metered) { final String name = chooseName(metered.name(), metered.absolute(), method); return registry.meter(name, () -> new Meter(clock)); }
private boolean isMetricAbsolute(Annotation annotation) { if (extension.<Boolean>getParameter(UseAbsoluteName).orElse(false)) return true; if (CachedGauge.class.isInstance(annotation)) return ((CachedGauge) annotation).absolute(); else if (Counted.class.isInstance(annotation)) return ((Counted) annotation).absolute(); else if (ExceptionMetered.class.isInstance(annotation)) return ((ExceptionMetered) annotation).absolute(); else if (Gauge.class.isInstance(annotation)) return ((Gauge) annotation).absolute(); else if (Metered.class.isInstance(annotation)) return ((Metered) annotation).absolute(); else if (Timed.class.isInstance(annotation)) return ((Timed) annotation).absolute(); else throw new IllegalArgumentException("Unsupported Metrics forMethod [" + annotation.getClass().getName() + "]"); }
public MeteredMetricsFilter(MetricRegistry metricRegistry, ResourceInfo resourceInfo) { final Metered annotation = resourceInfo.getResourceMethod().getAnnotation(Metered.class); meter = metricRegistry.meter(chooseName(annotation.name(), annotation.absolute(), resourceInfo.getResourceMethod())); } @Override
private boolean isMetricAbsolute(Annotation annotation) { if (extension.<Boolean>getParameter(UseAbsoluteName).orElse(false)) return true; if (CachedGauge.class.isInstance(annotation)) return ((CachedGauge) annotation).absolute(); else if (Counted.class.isInstance(annotation)) return ((Counted) annotation).absolute(); else if (ExceptionMetered.class.isInstance(annotation)) return ((ExceptionMetered) annotation).absolute(); else if (Gauge.class.isInstance(annotation)) return ((Gauge) annotation).absolute(); else if (Metered.class.isInstance(annotation)) return ((Metered) annotation).absolute(); else if (Timed.class.isInstance(annotation)) return ((Timed) annotation).absolute(); else throw new IllegalArgumentException("Unsupported Metrics forMethod [" + annotation.getClass().getName() + "]"); }
public MeteredMetricsFilter(MetricRegistry metricRegistry, ResourceInfo resourceInfo) { final Metered annotation = resourceInfo.getResourceMethod().getAnnotation(Metered.class); meter = metricRegistry.meter(chooseName(annotation.name(), annotation.absolute(), resourceInfo.getResourceMethod())); } @Override
final Metered annotation = executeMethod.getAnnotation(Metered.class); final String name = chooseName(annotation.name(), annotation.absolute(), task); taskExecutor = new MeteredTask(taskExecutor, metricRegistry.meter(name));
final String name = chooseName(annotation.name(), annotation.absolute(), method); final Meter meter = registry.meter(name); dispatcher = new MeteredRequestDispatcher(dispatcher, meter);