Class PulsarConsumerInterceptor
java.lang.Object
org.apache.skywalking.apm.plugin.pulsar.common.PulsarConsumerInterceptor
- All Implemented Interfaces:
org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodsAroundInterceptor
public class PulsarConsumerInterceptor
extends Object
implements org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodsAroundInterceptor
Interceptor for pulsar consumer enhanced instance
Here is the intercept process steps:
1. Record the service url, topic name and subscription name through this(ConsumerImpl) 2. Create the entry span when callmessageProcessedmethod 3. Extract all theTrace Contextwhen callmessageProcessedmethod 4. Capture trace context and set into SkyWalkingDynamic field if consumer has a message listener whenmessageProcessedmethod finished 5. Stop the entry span.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionafterMethod(org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.EnhancedInstance objInst, Method method, Object[] allArguments, Class<?>[] argumentsTypes, Object ret) voidbeforeMethod(org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.EnhancedInstance objInst, Method method, Object[] allArguments, Class<?>[] argumentsTypes, org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.MethodInterceptResult result) voidhandleMethodException(org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.EnhancedInstance objInst, Method method, Object[] allArguments, Class<?>[] argumentsTypes, Throwable t)
-
Field Details
-
OPERATE_NAME_PREFIX
- See Also:
-
CONSUMER_OPERATE_NAME
- See Also:
-
-
Constructor Details
-
PulsarConsumerInterceptor
public PulsarConsumerInterceptor()
-
-
Method Details
-
beforeMethod
public void beforeMethod(org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.EnhancedInstance objInst, Method method, Object[] allArguments, Class<?>[] argumentsTypes, org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.MethodInterceptResult result) throws Throwable - Specified by:
beforeMethodin interfaceorg.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodsAroundInterceptor- Throws:
Throwable
-
afterMethod
public Object afterMethod(org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.EnhancedInstance objInst, Method method, Object[] allArguments, Class<?>[] argumentsTypes, Object ret) throws Throwable - Specified by:
afterMethodin interfaceorg.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodsAroundInterceptor- Throws:
Throwable
-
handleMethodException
public void handleMethodException(org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.EnhancedInstance objInst, Method method, Object[] allArguments, Class<?>[] argumentsTypes, Throwable t) - Specified by:
handleMethodExceptionin interfaceorg.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodsAroundInterceptor
-