Package io.micrometer.core.aop
Class CountedAspect
- java.lang.Object
-
- io.micrometer.core.aop.CountedAspect
-
@NonNullApi public class CountedAspect extends java.lang.Object
Aspect responsible for intercepting all methods annotated with theCounted
annotation and record a few counter metrics about their execution status.- Since:
- 1.2.0
- See Also:
Counted
-
-
Constructor Summary
Constructors Constructor Description CountedAspect(MeterRegistry meterRegistry)
Construct a new aspect with the givenmeterRegistry
along with a default tags provider.CountedAspect(MeterRegistry meterRegistry, java.util.function.Function<org.aspectj.lang.ProceedingJoinPoint,java.lang.Iterable<Tag>> tagsBasedOnJoinPoint)
Constructs a new aspect with the givenmeterRegistry
and tags provider function.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
interceptAndRecord(org.aspectj.lang.ProceedingJoinPoint pjp, Counted counted)
Intercept methods annotated with theCounted
annotation and expose a few counters about their execution status.
-
-
-
Constructor Detail
-
CountedAspect
public CountedAspect(MeterRegistry meterRegistry)
Construct a new aspect with the givenmeterRegistry
along with a default tags provider.- Parameters:
meterRegistry
- Where we're going register metrics.
-
CountedAspect
public CountedAspect(MeterRegistry meterRegistry, java.util.function.Function<org.aspectj.lang.ProceedingJoinPoint,java.lang.Iterable<Tag>> tagsBasedOnJoinPoint)
Constructs a new aspect with the givenmeterRegistry
and tags provider function.- Parameters:
meterRegistry
- Where we're going register metrics.tagsBasedOnJoinPoint
- A function to generate tags given a join point.
-
-
Method Detail
-
interceptAndRecord
public java.lang.Object interceptAndRecord(org.aspectj.lang.ProceedingJoinPoint pjp, Counted counted) throws java.lang.Throwable
Intercept methods annotated with theCounted
annotation and expose a few counters about their execution status. By default, this aspect records both failed and successful attempts. If theCounted.recordFailuresOnly()
is set totrue
, then the aspect would record only failed attempts. In case of a failure, the aspect tags the counter with the simple name of the thrown exception.- Parameters:
pjp
- Encapsulates some information about the intercepted area.counted
- The annotation.- Returns:
- Whatever the intercepted method returns.
- Throws:
java.lang.Throwable
- When the intercepted method throws one.
-
-