我将带有Zipkin的Spring Cloud Sleuth添加到现有代码中以收集跟踪信息并最终记录任意消息 . 常规请求范围被正确发送到Zipkin:
2018-05-25 15:25:19.254 INFO [myapp,4c01686771321248,9c4b58c457df1acc,true] 1 --- [nio-7200-exec-6] c.f.l.service.SiteService : SiteService: getData
但是,我还想向Zipkin发送日志消息(作为新 Span 或现有 Span 的注释) . 如果我使用 org.slf4j.Logger
只是 LOG.info("something")
,我在控制台输出中看到 INFO
消息, exportable
标志设置为true:
2018-05-25 15:25:19.274 INFO [myapp,4c01686771321248,9c4b58c457df1acc,true] 1 --- [nio-7200-exec-6] c.f.l.service.SiteService : something
检查Zipkin中的迹线,正确找到了 Span ,但 LOG.info()
行中使用的消息无处可见 - 这表明我'm doing something wrong here, or maybe it'不应该以这种方式工作 . 我的采样百分比设置为100% .
使用slf4j接口会很方便,因为现有代码已经通过这种方式进行了检测 . 可能吗?如果是这样,有什么可能是实施它的好方法?
1 回答
您无法将日志发送到Zipkin . 您可以将日志语句发送给ELK . 你可以查看样本https://github.com/marcingrzejszczak/vagrant-elk-box,它有一个带有ELK的流浪盒,使用Sleuth进行日志关联并使用ELK可视化日志