基于Kubernetes的dubbo mock测试系统

1、编写javaagent用于对dubbo invoke方案做切面处理

public class Agent {

    private static final Logger logger = LogManager.getLogger(Agent.class);

    public static void premain(String arguments, Instrumentation instrumentation)   {
 // 匹配被拦截方法    
  agentBuilder.type(named("com.alibaba.dubbo.rpc.cluster.support.wrapper.MockClusterInvoker"))
                .transform(
                        new AgentBuilder.Transformer() {
                            @Override
                            public DynamicType.Builder<?> transform(DynamicType.Builder<?> builder, TypeDescription type, ClassLoader classLoader, JavaModule module) {
                                return builder.method(named("invoke")).intercept(
                                        MethodDelegation.withDefaultConfiguration().to(
                                                new CommonInterceptor(classLoader, "com.example.dubbomock.agent.DubboInvokeInterceptor")));
                            }
                        }
                ).installOn(instrumentation);

//注解方式l配置依赖的dubbo interface方式拦截
 agentBuilder.type(named("com.alibaba.dubbo.config.ReferenceConfig"))
                .transform(
                        //拦截器没有call 其他类加载器加载的类,无需做classloader转换
                        new AgentBuilder.Transformer() {
                            @Override
                            public DynamicType.Builder<?> transform(DynamicType.Builder<?> builder, TypeDescription type, ClassLoader classLoader, JavaModule module) {
                                return builder.method(named("createProxy")).intercept(
                                        MethodDelegation.to(DubboStartInterceptor.class));
                            }
                        }
                ).installOn(instrumentation);

}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 2022-03-10 中原焦点团队网络初级、中级30期,曹慧芳,坚持分享201天,2022年3月10日 今天听筑...
    2989c2df2abf阅读 114评论 0 0
  • 【案例】英国商科研究生申请成功案例 申请英国商科研究生 申请英国商科研究生,Y同学给我们的第一印象是不拘一格的个性...
    求真崔老师阅读 117评论 0 0
  • 下一站:工业互联网 为什么手机巨头要造车? 为什么车企要造手机? 大家纷纷进军电动汽车? 电动汽车是什么? 汽车是...
    50岁的失业中年阅读 119评论 0 0
  • 昨天天气不错,不冷不热的,很舒服。昨天早上写了日记,中午带了娃,直到下午才开始专注上班。晚上处理完吃饭等事宜之后,...
    鱼笨自由阅读 89评论 0 1
  • 【静安区】关于征集2022年静安区科普项目的通知 各有关单位: 为打造静安科普特色品牌,支持和鼓励全社会参与科普事...
    知产圈李老师阅读 119评论 0 0