5

假设我们有许多 Web API 微服务,它们是用不同的语言/框架编写的(有些是 ASP.NET Web API,有些是 NodeJS,有些是 Flask 等)。

我想记录对任何服务的每个请求,我更喜欢集中式日志。

我应该使用什么方法/工具?

问候,丹尼尔

4

3 回答 3

6

有一种非常著名的方法叫做 ELK:

  • Elasticsearch:实时搜索和分析数据
  • Logstash:从每台机器收集、解析和丰富数据
  • Kibana:以图形方式探索和可视化您的数据

因此,所有信息都由 Logstash 收集,存储在 Elasticsearch 中并使用 Kibana UI 进行可视化。

有了这个堆栈,谁在生成信息(或使用什么技术)就无关紧要了。

于 2015-04-23T17:31:06.840 回答
1

如果您的日志变得更大(例如 TB 级别),您将需要一个大数据解决方案。我建议使用Apache HadoopApache FlumeElasticsearch。定期收集最新的日志数据并将其泵入 Elasticsearch,通过 Flume 代理将日志数据输入 HDFS 或HBase

于 2015-08-27T11:03:43.363 回答
1

您可以有效地使用任何语言/日志记录工作框架。您需要做的就是在您的服务系列中再引入一项服务,即日志记录服务。您的所有服务都将日志发布到服务总线,服务总线依次将日志路由到日志服务以实现持久性。

于 2016-11-01T15:54:13.490 回答