分布式系统日志收集与追踪
日志收集分布式系统的日志收集通常采用ELK实现,但是Logstash一般不支持高并发,所以通过kafka来削峰,通过filebeat或者flume收集日志到kafka。很明显分布式系统每个服务的日志都会传输到Elasticsearch上,怎么获取一次请求链路所有服务的日志呢?需要用到全局log_id,最简单的方案是在网关层设置每次请求的log_id,后续所有服务都获取这个log_id打印到日志里面去。日志追踪分布式系统一次请求链路涉及多个服务,怎么统计每个服务调用的耗时等信息呢?这是日志追踪组件