Package org.springframework.aop.interceptor

# Class AbstractMonitoringInterceptor

java.lang.Object
org.springframework.aop.interceptor.AbstractTraceInterceptor
org.springframework.aop.interceptor.AbstractMonitoringInterceptor

All Implemented Interfaces:
  `Serializable`, `Advice`, `Interceptor`, `MethodInterceptor`

Direct Known Subclasses:
  `PerformanceMonitorInterceptor`

public abstract class AbstractMonitoringInterceptor extends AbstractTraceInterceptor
Base class for monitoring interceptors, such as performance monitors. Provides configurable "prefix and "suffix" properties that help to classify/group performance monitoring results.

In their `AbstractTraceInterceptor.invokeUnderTrace(org.aopalliance.intercept.MethodInvocation, org.apache.commons.logging.Log)` implementation, subclasses should call the `createInvocationTraceName(org.aopalliance.intercept.MethodInvocation)` method to create a name for the given trace, including information about the method invocation along with a prefix/suffix.

Since:
  1.2.7
Author:
  Rob Harrop, Juergen Hoeller
See Also:
  - `setPrefix(java.lang.String)`
  - `setSuffix(java.lang.String)`
  - `createInvocationTraceName(org.aopalliance.intercept.MethodInvocation)`
  - Serialized Form

## Field Summary

### Fields inherited from class org.springframework.aop.interceptor.AbstractTraceInterceptor

`defaultLogger`

## Constructor Summary

Constructors
Constructor
Description
`AbstractMonitoringInterceptor()`

## Method Summary

Modifier and Type
Method
Description
`protected String`
`createInvocationTraceName(MethodInvocation invocation)`
Create a `String` name for the given `MethodInvocation` that can be used for trace/logging purposes.
`protected String`
`getPrefix()`
Return the text that will get appended to the trace data.
`protected String`
`getSuffix()`
Return the text that will get prepended to the trace data.
`void`
`setLogTargetClassInvocation(boolean logTargetClassInvocation)`
Set whether to log the invocation on the target class, if applicable (i.e.
`void`
`setPrefix(String prefix)`
Set the text that will get appended to the trace data.
`void`
`setSuffix(String suffix)`
Set the text that will get prepended to the trace data.

### Methods inherited from class org.springframework.aop.interceptor.AbstractTraceInterceptor

`getClassForLogging, getLoggerForInvocation, invoke, invokeUnderTrace, isInterceptorEnabled, isLogEnabled, setHideProxyClassNames, setLogExceptionStackTrace, setLoggerName, setUseDynamicLogger, writeToLog, writeToLog`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### AbstractMonitoringInterceptor

public AbstractMonitoringInterceptor()

## Method Details

### setPrefix

public void setPrefix(@Nullable String prefix)
Set the text that will get appended to the trace data.

Default is none.

### getPrefix

protected String getPrefix()
Return the text that will get appended to the trace data.

### setSuffix

public void setSuffix(@Nullable String suffix)
Set the text that will get prepended to the trace data.

Default is none.

### getSuffix

protected String getSuffix()
Return the text that will get prepended to the trace data.

### setLogTargetClassInvocation

public void setLogTargetClassInvocation(boolean logTargetClassInvocation)
Set whether to log the invocation on the target class, if applicable (i.e. if the method is actually delegated to the target class).

Default is "false", logging the invocation based on the proxy interface/class name.

### createInvocationTraceName

protected String createInvocationTraceName(MethodInvocation invocation)
Create a `String` name for the given `MethodInvocation` that can be used for trace/logging purposes. This name is made up of the configured prefix, followed by the fully-qualified name of the method being invoked, followed by the configured suffix.

See Also:
  - `setPrefix(java.lang.String)`
  - `setSuffix(java.lang.String)`