@Inherited
@Documented
@Retention(value=RUNTIME)
@Target(value={TYPE,CONSTRUCTOR,METHOD,ANNOTATION_TYPE})
public @interface Counted
Given a method annotated with @Counted like this:
@Counted(name = "fancyName")
public String fancyName(String name) {
return "Sir Captain " + name;
}
A counter with the fully qualified class name + fancyName will be created and each time the
#fancyName(String) method is invoked, the counter will be marked.
Similarly, the same applies for a constructor annotated with counted.
(See monotonic() for how the counter will be incremented).
Given a class annotated with @Counted like this:
@Counted
public class CounterBean {
public void countMethod1() {}
public void countMethod2() {}
}
A counter for the defining class will be created for each of the constructors/methods.
Each time the constructor/method is invoked, the respective counter will be marked.
(See monotonic() for how the counter will be incremented)| Modifier and Type | Optional Element and Description |
|---|---|
boolean |
absolute
Denotes whether to use the absolute name or use the default given name relative to the annotated class.
|
java.lang.String |
description
The description of the counter.
|
java.lang.String |
displayName
The display name of the counter.
|
boolean |
monotonic |
java.lang.String |
name
The name of the counter.
|
boolean |
reusable
Denotes if this metric instance can be reused by multiple registrations.
|
java.lang.String[] |
tags
The tags of the counter.
|
java.lang.String |
unit
The unit of the counter.
|
public abstract java.lang.String name
public abstract java.lang.String[] tags
String tag must be in the form of 'key=value'. If the input is empty or does
not contain a '=' sign, the entry is ignored.Metadatapublic abstract boolean absolute
true, use the given name as an absolute name. If false (default), use the given name
relative to the annotated class. When annotating a class, this must be false.public abstract boolean monotonic
false (default), the counter is decremented when the annotated
method returns, counting current invocations of the annotated method.
If true, the counter increases monotonically, counting total
invocations of the annotated method.public abstract java.lang.String displayName
Metadatapublic abstract java.lang.String description
Metadatapublic abstract java.lang.String unit
MetricUnits.NONE.Metadata,
MetricUnits