@Inherited @Documented @InterceptorBinding @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.
|
String |
description
The description of the counter.
|
String |
displayName
The display name of the counter.
|
boolean |
monotonic |
String |
name
The name of the counter.
|
boolean |
reusable
Denotes if this metric instance can be reused by multiple registrations.
|
String[] |
tags
The tags of the counter.
|
String |
unit
The unit of the counter.
|
public abstract String name
public 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 String unit
MetricUnits.NONE.Metadata,
MetricUnitsCopyright © 2021. All rights reserved.