Logging 如何从大量(微型)服务聚合日志

Logging 如何从大量(微型)服务聚合日志,logging,service,spring-boot,microservices,Logging,Service,Spring Boot,Microservices,我们将使用Spring Boot构建大量(微型)服务。当然,这些将生成大量分离日志。管理这些日志的选项和最佳做法是什么,以及如何理解这些日志?谢谢你的帮助 这取决于您想如何理解日志。您可以使用丰富的日志聚合平台,如从不同的microservice实例收集和索引所有日志。使用此功能,您可以基于多个属性(如服务器IP、服务名称、日期范围等)搜索日志。设置此功能相当简单,尽管在生产中您希望使用最佳实践来实现高可用性 如果您想在系统的不同分布式组件之间进一步关联日志,您可能需要做更多的工作。例如,如果您

我们将使用Spring Boot构建大量(微型)服务。当然,这些将生成大量分离日志。管理这些日志的选项和最佳做法是什么,以及如何理解这些日志?谢谢你的帮助

这取决于您想如何理解日志。您可以使用丰富的日志聚合平台,如从不同的microservice实例收集和索引所有日志。使用此功能,您可以基于多个属性(如服务器IP、服务名称、日期范围等)搜索日志。设置此功能相当简单,尽管在生产中您希望使用最佳实践来实现高可用性

如果您想在系统的不同分布式组件之间进一步关联日志,您可能需要做更多的工作。例如,如果您希望在所有正在使用的微服务中遵循相同的“请求”,您可以附加一个公共标识符(例如会话ID)来记录这些服务中的消息。您将需要以某种方式跨服务边界传递此公共标识符。例如,如果您的服务是通过HTTP访问的,您可以通过HTTP头发送ID,并将上下文侦听器添加到您的微服务中,以检测特殊头并在每个日志消息中包含ID。如果围绕标准日志库开发一个薄包装器,它将透明地为开发人员提供ID,那么这将变得更容易。这种方法还有一个额外的好处,即允许您在所有服务中强制使用日志消息格式。(还有其他方法可以做到这一点,例如在麋鹿体内使用过滤器)


然后,当您稍后搜索聚合日志时,您可以搜索特定的ID,并通过使用的所有微服务跟踪给定的请求

您好@user1340582,您有机会阅读答案吗?您还有其他问题吗?