新浪博客


Kongadashboard展示的信息是否能满足我们日常仪表盘监控的需求了呢?显然还是完全不够的,一个好的API网关至少应该展示以下几个指标:
1、 服务数量(业务服务、路由服务)
2、 插件信息
3、 消费方信息
4、 平台当前连接、用户信息
5、 日志统计数据
Kong网关和konga的管理平台在数据存储上分两块,kong是采用cassandrapostgres进行存储,存储的数据包括服务、插件、消费方。Konga采用mysql存储,我自己写了一个mysql-log插件将日志数据插入了mysql的数据表中。
1、 修改kong源码,定义服务、插件、消费方数量统计的API。以业务服务为例,以下为业务服务增加的API代码。
Ø kong/db/dao/init.lua中增加:
kong的Dashboard展示需求和功能改造
Ø api/routes/services.lua中增加:
kong的Dashboard展示需求和功能改造
这样我们就能通过http://kong:8001/services-count来获得业务服务数量了。路由服务、消费方、插件数量同上进行操作即可。
2、 修改konga的源码,增加对apilogs表的调用日志统计,其中我统计了日志总量、昨天调用、今日调用、调用日志状态分布、当天调用日志分小时分布。最后得到DashBoard(这个可以根据客户需求进行调整),需要这段源码的可以加我微信交流学习:13816919057
kong的Dashboard展示需求和功能改造
kong的Dashboard展示需求和功能改造

我的更多文章

下载客户端阅读体验更佳

APP专享