java - 多平台分布式日志聚合工具

标签 java logging apache-kafka elastic-stack

我有一个用例来构建一个可在多个平台上使用的集中式日志聚合工具。基本上,我公司的应用程序套件包括基于 Angular 的 UI、基于 Ionic 的混合移动应用程序,两者都与 Java Spring Boot Restful 后端以及基于 PHP 的整体内部 CRM 交互。 现在,我需要一种方法将来自所有这些应用程序的日志聚合到一个集中位置,并根据严重性进行过滤,并且用户应该可以通过 UI 访问它们,在 UI 中他可以根据应用程序、关键字等进一步对日志进行分组和过滤。

https://dzone.com/articles/distributed-logging-architecture-for-microservices

像这样的解决方案是否可以独立于其聚合日志的平台或应用程序的技术堆栈而工作? 还有什么其他选择?

最佳答案

通常我会记录到 JSON。这只是日志附加程序中的一个配置,例如 PHP 中的 Monolog 或 Spring Boot 中的 Logback。

然后,您可以使用 Filebeat 跟踪这些文件并将它们存储在 Elasticsearch 中(并且无需进行任何解析),在 Kibana 中可视化/搜索,然后就完成了。

这是标签elastic-stack最简单也可能也是最通用的解决方案。

关于java - 多平台分布式日志聚合工具,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56767750/

相关文章:

java - 将 Kafka 输入流动态连接到多个输出流

java - Hibernate - 如何提供对整数类型的正确映射?

java - 将java代码转换为c#

perl - 如何在 Perl 中计算一堆数字流的中值和标准差?

Mysql查询日志(查询结果)

ipad - 了解(符号化)iOS崩溃日志

java - 在 Spring boot 中使用环境变量覆盖 application.yml

java - 将文件中的名称放入数组中会导致无限循环

java - 多个消费者引发的Kafka broker内存泄漏

apache-kafka - 删除未使用的 kafka 消费者组