pinpoint代码级的监控?
问题
最近在看dapper论文,同时本地跑了一把pinpoint,发现pinpoint的代码级别的监控很爽,翻看源代码缺没有找到这部分,可能是pinpoint以数字来代表method导致我没有看懂,大牛帮忙分析一波
相关代码
@RequestMapping("view")
@RestController
public class ViewController {
@Resource
private Reson reson;
@RequestMapping(method = RequestMethod.GET)
@ResponseBody
public Object detail(HttpServletRequest request) throws InterruptedException {
Thread.sleep(1000L);
reson.rrr();
reson.ddd();
TestVo testVo = new TestVo();
testVo.setName("ccc");
return testVo;
}
}
@Service
public class Reson {
public void rrr() throws InterruptedException {
Thread.sleep(1000L);
TestVo testVo = new TestVo();
testVo.setName("chen");
System.out.println(new Gson().toJson(testVo));
Thread.sleep(1000L);
}
public void ddd() throws InterruptedException {
Thread.sleep(1000L);
}
}
监控结果:
我的推测是进入一个method的时候,将 span
push到调用栈中,但是这种想法却有一个缺点,需要经过agent到转换,才能产生一次push,这里的 ddd()
方法及其方法内部很明显是没有这样的监控的,所以感到一定的迷茫,望大牛解答一波
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论