前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何使用Prometheus采集SAP ABAP Netweaver的应用日志数据

如何使用Prometheus采集SAP ABAP Netweaver的应用日志数据

作者头像
Jerry Wang
发布2019-11-29 10:26:42
3770
发布2019-11-29 10:26:42
举报

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://jerry.blog.csdn.net/article/details/103295726

Prometheus是一套开源的系统监控报警框架。它启发于Google的borgmon 监控系统,由工作在 SoundCloud 的 google 前员工在 2012 年创建,作为社区开源项目进行开发,并于2015年正式发布。2016年,Prometheus 正式加入 Cloud Native Computing Foundation,成为受欢迎度仅次于Kubernetes 的项目。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-I12qhr9O-1574929248949)(https://user-images.githubusercontent.com/5669954/69523875-e423f580-0f9f-11ea-80bc-d8eb4fd757f6.png)]

我们可以利用Prometheus强大的监控功能来采集SAP ABAP Netweaver服务器上运行应用的各项日志。以SAP CRM Fiori应用My Opportunity为例,假设我开发了一个自定义日志功能,把所有用户对Opportunity的读操作明细, 包括请求者,请求日期和请求时间记录在一个数据库表里。

clipboard2,2
clipboard2,2

然后我希望借助Prometheus,定期地查询Netweaver服务器,监控它服务了读请求的数量。下面是具体步骤。

(1) 在CRM My Opportunity后台的OData服务实现的BAdI definition CRM_OPPORTUNITY_ODATA_BD里创建一个增强。

因为所有的读请求,最后都要经过方法SORT_AND_FILTER_OPPT_TABLE的处理,所以我们把日记记录实现在这个方法里:

clipboard3,3
clipboard3,3

(2) 事务码SICF创建一个新的服务节点:

clipboard4,4
clipboard4,4

用SELECT COUNT(*)把数据库日志表的条目数读取出来,通过HTTP的方式返回给消费者。

clipboard5,5
clipboard5,5

(3) 在Prometheus服务器的配置文件prometheus.yml里,添加一条定期抓取步骤二创建的Netweaver HTTP服务:

clipboard6,6
clipboard6,6

第26行metrics_path即为SICF事务码里创建的服务路径,28行意思是每2秒抓取一次。33行是Netweaver服务器的主机名。

启动Prometheus服务器:

clipboard7,7
clipboard7,7

到Fiori UI上使用My Opportunity应用,触发读请求:

clipboard8,8
clipboard8,8

能看到日志表里填充了数据:

clipboard9,9
clipboard9,9

localhost:9090访问Prometheus的UI控制台,能看到采集的读请求个数:

clipboard10,10
clipboard10,10

切换到Graph面板,能看到指定时间间隔内的读请求变化趋势,比如下图意思是过去五分钟之内,读请求数量呈线性增长趋势

clipboard11,11
clipboard11,11
clipboard12,12
clipboard12,12
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-11-28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
Prometheus 监控服务
Prometheus 监控服务(TencentCloud Managed Service for Prometheus,TMP)是基于开源 Prometheus 构建的高可用、全托管的服务,与腾讯云容器服务(TKE)高度集成,兼容开源生态丰富多样的应用组件,结合腾讯云可观测平台-告警管理和 Prometheus Alertmanager 能力,为您提供免搭建的高效运维能力,减少开发及运维成本。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档