Package com.codahale.metrics.annotation
Annotation Type ExceptionMetered
-
@Inherited @Documented @Retention(RUNTIME) @Target({TYPE,CONSTRUCTOR,METHOD,ANNOTATION_TYPE}) public @interface ExceptionMetered
An annotation for marking a method of an annotated object as metered.Given a method like this:
@ExceptionMetered(name = "fancyName", cause=IllegalArgumentException.class) public String fancyName(String name) { return "Sir Captain " + name; }
A meter for the defining class with the name
fancyName
will be created and each time the#fancyName(String)
throws an exception of typecause
(or a subclass), the meter will be marked.A name for the metric can be specified as an annotation parameter, otherwise, the metric will be named based on the method name.
For instance, given a declaration of
@ExceptionMetered public String fancyName(String name) { return "Sir Captain " + name; }
A meter named
fancyName.exceptions
will be created and marked every time an exception is thrown.