AJ-Report增加http调用自定义实现,支持text/html类型的返回值

文章讲述了在使用AJ-Report这个全开源BI平台时,如何通过修改源码以支持Druid数据源的text/html类型返回数据。作者发现AJ-Report原生只支持JSON,于是在HTTP调用部分进行改造,使用String类型接收,同时修改查询参数的Accept内容。这种方法相对于通过SQL方式集成Druid指标数据更为简洁。
摘要由CSDN通过智能技术生成

        AJ-Report是全开源的一个BI平台,酷炫大屏展示。做系统监控很合适,它可以基于sql或者http查询系统监控指标,与业务系统可以充分的解耦,个人觉得非常不错,但是在使用中也遇到了一些问题,并进行了代码改进,本想向官方提交PR,只可惜,人家说我这是特殊情况就不往主干上合并了,好吧, 那就自己用吧,在此记录一下。

      AJ-Report支持两种数据集,分别为sql和http,sql是根据数据源配置将数据通过sql查询的方式展示出来,如果有现成的采集数据并且已经入库,这种方式很方便。http方式是需要通过http调用查询目标服务的接口,将结果展示出来,但是目前官方的http调用只支持json类型的返回数据源,对text类型并不支持,官方的解释是json已经满足了大部分场景,所以只支持这一种。在我们的项目中使用了阿里的druid数据源,我们希望把druid数据源的指标数据也集成到AJ-Report监控体系中,所以采用了http调用的方式来查询,但是druid开放的接口中返回的类型是text/html类型,AJ-Report并不支持。

         没办法,自己动手丰衣足食,找到http调用的源码部分进行改造,原始代码是这样的

可以看到返回类型只支持Object类型。改造后如下

使用String类型接收text类型,当然,这样改造后界面的查询参数 需要增加Accept内容

这样查询才知道用哪种类型来接收 。

        总结:这样的改造是最少的,还有一种方式是通过sql方式,那样就需要系统将druid数据源的监控指标通过后台线程采集到表里,需要对druid内置的api进行重写,这样我觉得更麻烦,改开源代码的改动量更少一些,顺便还能提个PR,但是......没关系,至少是一次不错的尝试ヾ(◍°∇°◍)ノ゙

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hamilton_Huan

原创不易,结合业务原创更不易

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值