当前位置: 首页 > 知识库问答 >
问题:

有没有办法用Prometheus和Grafana监控Apache服务器?

萧繁
2023-03-14

我的要求是使用Prometheus和Grafana监视包含Apache的Linode虚拟机。(PS-普罗米修斯和格拉法纳在一个单独的Linode虚拟机中运行)

我使用以下文档安装Apache exporter:https://www.techbeginner.in/2021/01/install-and-configure-apache-node.html.服务文件如下所示:

[Unit]
Description=Prometheus
Documentation=https://github.com/Lusitaniae/apache_exporter
Wants=network-online.target
After=network-online.target

[Service]
Type=simple
User=prometheus
Group=prometheus
ExecReload=/bin/kill -HUP $MAINPID
ExecStart=/usr/local/bin/apache_exporter \
  --insecure \
  --scrape_uri=http://localhost/server-status/?auto \
  --telemetry.address=0.0.0.0:9117 \
  --telemetry.endpoint=/metrics

SyslogIdentifier=apache_exporter
Restart=always

[Install]
WantedBy=multi-user.target

我已将--scrape_uri更改为http://usr_name:password@本地主机/服务器状态/?自动\和--遥测。地址127.0.0.1:9117,但我相信这不会有任何区别。普罗米修斯能够搜集数据。但是当我导入一个grafana仪表板(ID-3894)来可视化数据时,我没有得到任何数据。在整个仪表板中的7个面板(当前发送的总KB、当前的总apache访问量、apache记分板状态、apache worker状态、apache CPU负载、正常运行时间和apache Up/Down)中,我可以看到apache Up/Down的图形。其他6人说没有可用的数据。

这是prometheus.yml配置:

#Apache Servers
  - job_name: apache-web-server
    static_configs:
      - targets: ['x.x.x.x:9117']
        labels:
          alias: server-apache

PS-两个Linode实例都包含Debian GNU/Linux 9.8(stretch)作为其操作系统

我错过了什么?我怎样才能得到其余面板的图表?非常感谢您的帮助。先谢谢你。

共有1个答案

程鸿煊
2023-03-14

从您提到的内容来看,您似乎没有设置ExtendedStatus。

在这里查看:https://httpd.apache.org/docs/2.4/mod/mod_status.html.

The details given are:

The number of workers serving requests
The number of idle workers
The status of each worker, the number of requests that worker has     performed and the total number of bytes served by the worker (*)
A total number of accesses and byte count served (*)
The time the server was started/restarted and the time it has been running for
Averages giving the number of requests per second, the number of bytes served per second and the average number of bytes per request (*)
The current percentage CPU used by each worker and in total by all workers combined (*)
The current hosts and requests being processed (*)

The lines marked "(*)" are only available if ExtendedStatus is On. 

一个适用于我的示例配置涵盖了所有指标:

ExtendedStatus On

<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from localhost
</Location>

也就是说,ExtendedStatus从2.3.6默认打开。我猜您使用的是比这个版本更低的Apache版本。

旁注:我写了一篇文章,涵盖了监控Apache的大部分方面,包括粒度流量指标:https://www.giffgaff.io/tech/monitoring-apache-with-prometheus

它还涵盖了使用ExtendedState的Apache配置。

 类似资料:
  • 描述 作为grafana和prometheus世界的新手,我正在努力将laravel php cli应用程序中的自定义指标添加到grafana云,最好是通过grafana代理。 情况 我在一个linux服务器上使用grafana云和他们的grafana代理,该服务器运行一个laravel php工作者,没有Web服务器。grafana代理运行node_exporter集成。我已经尝试找到一些关于如

  • Prometheus Prometheus是最初在SoundCloud上构建的云原生监视平台。Prometheus提供了多维数据模型,其中包含通过度量标准名称和键/值对标识的时间序列数据。数据收集通过HTTP / HTTPS上的拉模型进行。通过服务发现或静态配置发现要提取数据的目标。 MinIO默认情况下将Prometheus兼容数据作为授权端点导出/minio/prometheus/metric

  • 当我试图从Tomcat服务器上可用的源获取数据时,我的应用程序会超时。我可以看到数据库查询是罪魁祸首,因为它在100秒内发送数据,因为它正在处理大量的数据。我的请求在60秒内超时,导致以下错误 我使用mod_代理从ApacheWeb服务器连接到tomcat服务器。我尝试将SSL连接器的增加到90000毫秒,但仍然请求在60秒内获得超时。我是否缺少任何需要更改的内容,以便增加连接超时。 我正在使用T

  • 主要内容:1.Prometheus简介,2.Prometheus优势,Prometheus架构,3.安装,4.启动,5.PromSQL,6.Prometheus和grafana1.Prometheus简介 Prometheus受启发于Google的Brogmon监控系统(相似的Kubernetes是从Google的Brog系统演变而来),从2012年开始由前Google工程师在Soundcloud以开源软件的形式进行研发,并且于2015年早期对外发布早期版本。2016年5月继Kubernetes

  • 我正在编写一个JavaFractal Explorer,分形计算是多线程完成的。以前,我只是创建了一堆线程(系统有多少处理器内核就有多少)并将它们保存在一个数组中,但这会导致一些问题,而且不是很优雅,现在我想切换到执行器。 我需要的功能是: 用户可以随时选择要放大的分形图像的新区域,因此应该可以随时取消计算,并立即重新插入新任务 我的问题是Java ExecutorService(我使用Execu

  • 我目前正在尝试使用PrAG堆栈来监视基于Spring Boot的微服务。有2个spring boot Projects1.5.4(pom.xml)配置了以下依赖项以获取度量并将度量转换到prometheus服务器: