运维

基于SkyWalking的分布式跟踪系统 - 微服务监控

2019-11-07  本文已影响0人  JAVA日知录

上一篇文章我们搭建了基于SkyWalking分布式跟踪环境,今天聊聊使用SkyWalking监控我们的微服务(DUBBO)

服务案例

假设你有个订单微服务,包含以下组件

网络拓扑图如下


image

生产者的关键代码

@Service
public class OrderServiceImpl implements OrderService {

    @Autowired
    protected OrderMapper orderMapper;

    @Override
    public OrderVO getById(long id) {
        OrderVO orderVO = new OrderVO();
        Order order = orderMapper.selectById(id);
        BeanUtils.copyProperties(order,orderVO);
        return orderVO;
    }
}

消费者的关键代码

@RestController
public class OrderController {

    @Reference(retries = 0)
    private OrderService orderService;

    @GetMapping("/order/{id}")
    public OrderVO getOrder(@PathVariable long id){
        return orderService.getById(id);
    }

}

监控启动

日志集成

这部分我们先看下调用链的原理:

正是由于TraceID如此重要,所以我们希望这个调用链的TraceID能输出在日志文件中,一旦观察到有异常调用,我们在日志分析平台直接搜索TraceID即可将关联的日志全部检索出来,大大提高我们解决问题的效率。

集成过程(log4j2)

很简单的几步就让你的微服务加上了调用链监控,你还不赶紧试试?

相关文章:
基于SkyWalking的分布式跟踪系统 - 环境搭建

SpringBoot2.1.9+dubbo2.7.3+Nacos1.1.4构建你的微服务体系

欢迎关注我的个人公众号:JAVA日知录

上一篇 下一篇

猜你喜欢

热点阅读