`
JerryWang_SAP
  • 浏览: 1043908 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

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

阅读更多

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

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

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

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

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

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

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

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

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

启动Prometheus服务器:

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

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

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

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

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

0
2
分享到:
评论

相关推荐

    prometheus-api数据采集

    Prometheus 是一个开源的监控和警报系统,广泛应用于云原生环境,它以其强大的时序数据处理能力和灵活的查询语言 Prometheus Query Language ( PromQL ) 而闻名。本篇文章将详细探讨如何通过 Prometheus 的 API 进行...

    基于Prometheus采集netapp存储的exporter

    此外,频繁的数据拉取可能会对存储设备和Prometheus服务器造成一定的性能压力,需要合理设置采集频率。 总结起来,通过Linux版的NetApp exporter,我们可以利用Prometheus的强大功能,对NetApp存储系统进行深度监控...

    Prometheus数据API导出Python脚本(export Prometheus metric data by http api)

    本文将深入探讨如何使用Python来调用Prometheus的数据API,导出Prometheus采集的各种机器指标。 首先,你需要安装Python的`requests`库,这是一个用于发送HTTP请求的库。如果没有安装,可以通过以下命令进行安装: ...

    Python调用Prometheus监控数据并计算.zip

    1. **Prometheus服务器**:Prometheus服务器负责定期抓取目标(targets)上的时间序列数据,这些目标可以是各种服务或应用。它存储所有抓取的数据,并提供查询语言PromQL来检索这些数据。 2. **时间序列数据**:...

    使用Python编程以CSV方式导出Prometheus指定的监控数据

    使用Python编程以CSV方式导出Prometheus指定的监控数据,只要获取PMSQL填入变量即可轻松导出~

    Prometheus在金融行业的应用.pdf

    在金融行业中,Prometheus的应用因其强大的监控能力和灵活的数据模型而受到广泛欢迎。以下将详细阐述Prometheus在金融行业的核心应用场景、功能特性以及与其它系统的集成方式。 一、Prometheus在金融行业的应用 1....

    Prometheus在金融行业的应用.pptx

    5. 强大的查询语言:Prometheus提供了PromQL,允许用户使用复杂的计算公式获取所需数据,但这也增加了学习曲线。 三、Prometheus架构与组件 1. Prometheus Server:负责抓取和存储时序数据,是整个系统的中心。 2...

    应用程序监控方案(Prometheus)

    Prometheus 采用 pull 模式采集数据,而 Zabbix 采用 push 模式。Prometheus 的数据模型更加灵活和灵活,能够更好地支持大规模集群和分布式系统。 6. 应用场景 Prometheus 可以应用于各种场景,例如监控大规模集群...

    基于go语言为Greenplum集成普罗米修斯(prometheus)的监控数据采集器

    基于go语言为Greenplum集成普罗米修斯(prometheus)的监控数据采集器。 项目地址: Github: https://github.com/tangyibo/greenplum_exporter Gitee: https://gitee.com/inrgihc/greenplum_exporter 一、编译方法...

    对prometheus采集的数据进行打分,参与k8s调度,源码版本为1.26.7.zip

    1. **Prometheus 数据采集**: Prometheus 通过 Service Discovery 机制发现服务,并定期抓取目标节点上的指标。这些指标包括各种度量,如 CPU 使用率、内存消耗、网络流量等。项目中的“networtraffic”可能指的是...

    使用prometheus监控k8s

    在容器化领域,Kubernetes(简称k8s)已经成为事实上的标准,用于管理和自动化容器化的应用程序。Prometheus作为一款强大的开源监控系统和时间序列数据库,是监控Kubernetes集群的首选工具。本文将深入探讨如何使用...

    Prometheus应用方案文档1.0.docx

    总结,Prometheus 提供了一个全面的监控解决方案,从数据采集到数据分析,再到报警和可视化,满足了现代云环境和服务监控的需求。通过理解其工作原理和使用方法,开发者可以有效地利用 Prometheus 监控和管理他们的...

    Prometheus

    zabbix客户端通过脚本采集数据库数据、日志文件等。而Prometheus客户端分为不同语言的SDK和不同用途的exporter,比如监控机器状态、mysql性能等,可以直接使用exporter,通过http对服务端提供信息(server去pull信息...

    Prometheus+Grafana部署使用说明1

    在IT监控领域,Prometheus和Grafana是两个非常重要的工具,它们被广泛用于系统和应用性能监控。本文将详细介绍如何在Linux环境下部署Prometheus和Grafana,并结合Canal来实现MySQL变化情况的性能监控。 一、...

    使用Prometheus全方位监控K8s集群

    使用Prometheus全方位监控K8s集群 ...使用Prometheus可以对K8s集群进行全方位的监控,具有多维度数据模型、灵活的查询语言、不依赖分布式存储等特点,可以对K8s集群中的监控数据进行可视化展示和告警规则的配置和管理。

    基于Prometheus 和 Grafana 实现springboot应用监控和服务器监控

    本文将详细介绍如何使用Prometheus和Grafana来实现对Spring Boot应用程序和服务器的监控。 首先,Prometheus是一款开源的度量分析系统,它能够收集、存储、查询、警报各种应用和服务的指标数据。Prometheus通过HTTP...

    使用prometheus监控k8s的grafana模板

    Prometheus是一款强大的开源系统监控和警报工具,而Grafana则是一款优秀的数据可视化平台,两者结合能够提供一套完整的监控解决方案。在这个“使用prometheus监控k8s的grafana模板”主题中,我们将深入探讨如何利用...

    prometheus上篇PDF

    作者详细介绍了Prometheus的基本概念、架构设计、数据格式、数学基础、命令行使用、数据采集方法、Exporter模块、Pushgateway模块、Grafana的使用和结合、Alertmanager的使用和结合、Pagerduty的使用和结合等等。...

    Prometheus 实战.pdf

    在Prometheus的架构中,数据采集主要通过拉取(Pulling)的方式进行,也就是说,Prometheus服务器会定期向被监控的目标发送请求,从而获取目标的性能指标数据。当系统规模变大时,为了高效获取和存储数据,...

    数据监控django-prometheus.zip

    标题“数据监控django-prometheus.zip”提到了一个用于数据监控的工具,即`django-prometheus`,它是一个与Prometheus.io集成的Django应用。Prometheus是一个流行的开源监控系统和时间序列数据库,而`django-...

Global site tag (gtag.js) - Google Analytics