如何在Kong中进行API监控,例如查看使用计数/响应代码/消费模式等?

时间:2019-12-29 07:12:26

标签: api prometheus grafana kong

我刚刚开始探索kong,以监控我的Restful API。 在那之前,我一直在研究Gravitee.io 我想知道查看我的API使用模式的最佳方法是什么:

  1. 谁调用了我的API?
  2. 什么时候叫?
  3. 返回的错误代码/响应是什么?
  4. 从哪个IP调用?
    以及其他此类详细信息。这些详细信息可以在gravitiee.io中找到,但是在Kong(社区版)中,我很难找到类似的功能。

我听说过用于API分析的插件(例如Prometheus和grafana)。 我什至在我的API中添加了Prometheus插件。但是下一步我无法理解。 请帮助我在一些(免费)仪表板上查看API分析。

2 个答案:

答案 0 :(得分:0)

Prometheus和Grafana通常用于矩阵收集和可视化。 Prometheus将收集指标数据并将其转发给Grafana以图形或图表的形式显示。

您要我假设的内容称为日志分析。在这种情况下,您可以将诸如ELK(ElasticSearch,Logstash和Kibana)之类的日志服务与Kong一起使用,以获取所需的服务。您可以根据需要转储和分析日志数据。例如,它来自哪个IP,调用API的时间,响应是什么等等。

您可以轻松地将这些与Kong集成。安装TCP / UDP日志插件,将它们导出到Logstash和ElasticSearch。然后使用Kibana查看它们。

如果使用K8S,则可以使用EFK(ElasticSearch,Fluentd和Kibana)来分析生成的日志。

答案 1 :(得分:0)

我完全同意Shahed在上面提到的有关如何可视化Kong生成的Logs的答案中。

除了上述答案外,我还想添加一些有用的东西。

  • Http Log插件可用于将日志重定向到Elastic Search实例,以后可在Kibana中可视化。
  • 没有任何功能可查看请求和响应正文,这是开发人员长期以来的要求。选中here

我仍然不确定为什么PR for including Resquest and Response Body is still not Merged