Prometheus 和 Grafana - 有没有办法让用户使用机器?

2023-12-13

我一直在与 Prometheus 和 Grafana 合作,获取几个计算机实验室的状态和统计数据。有没有一种方法可以让我通过 Prometheus 登录计算机的用户并将其放到 Grafana 上?


我会列出2个选项。第一个将 Pushgateway 与 Prometheus 一起使用,第二个仅使用 Prometheus。

1 - 将 Pushgateway 与 Prometheus 结合使用

您可以使用的一种解决方案是Pushgateway。您将已登录和未登录的用户推送到Pushgateway and Prometheus刮擦它以收集值。这很快,因为您无需配置应用程序即可让 Prometheus 从中抓取数据。首先在您的设备上配置 PushGatewayprometheus.yml配置文件:

....
scrape_configs:
  - job_name: 'pushgateway'
    scrape_interval: 10s
    honor_labels: true # disable auto discover labels
    static_configs:
      - targets: ['pushgateway:9091']

然后使用此脚本收集所有用户并将其分为已登录用户和未登录用户:

#!/bin/bash

users=`cat /etc/passwd | cut -d: -f1`
users_logged=`who | cut -d' ' -f1 | sort | uniq`

for u in $users; do
  cmd="curl --data-binary @- http://admin:admin@localhost:9091/metrics/job/$u"
  if [[ "$users_logged" == *"$u"* ]]; then
    # echo "some_metric 3.14" | curl --data-binary @- http://admin:admin@localhost:9091/metrics/job/some_job
    echo "linux_user 1" | `echo $cmd`
  else
    echo "linux_user 0" | `echo $cmd`
  fi
done

Once you Pushgateway is up and running at http://127.0.0.1:9091/ you run the script in a corn job and it will push the values to Pushgateway. enter image description here

2 - 仅使用普罗米修斯

如果您不想使用 Pushgateway,您可以将您的应用程序配置为收集登录您计算机的用户并使用普罗米修斯客户端库它适合您的应用程序编程语言并公开指标端点并让 Prometheus 从中提取数据。这是一个使用的示例Spring Boot 在 Java 中使用千分尺.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Prometheus 和 Grafana - 有没有办法让用户使用机器? 的相关文章

  • 如何更改 Grafana 中的背景颜色?

    我想修改 Grafana 中的深色主题 以便它使用 000000作为背景颜色 我见过 如何更改Grafana的默认黑色 https stackoverflow com questions 41006070 how to change def
  • 打开查询日志文件时出错” file=/prometheus/queries.active err="open /prometheus/queries.active: 权限被拒绝

    尝试使用非root用户运行prometheus并尝试了许多建议后https github com prometheus prometheus issues 5976 https github com prometheus prometheu
  • 如何在多地点场景下配置Prometheus?

    我喜欢使用 Prometheus 进行监控和警报 到目前为止 我的所有目标 节点和容器 都与监控服务器位于同一网络上 但现在我面临一个场景 我们将应用程序堆栈 作为一堆 Docker 容器 部署到网络中的多台客户端计算机 几乎所有客户端网络
  • Prometheus Java 摘要指标是线程安全的吗?

    普罗米修斯是Java吗Summary对象线程安全 如果我在类中将其声明为静态 则该类的所有实例都将使用它 Prometheus 是否为该度量对象实现了线程安全 Prometheus 客户端库负责处理方向检测的线程安全等细节 例如Summar
  • 为什么prometheus Operator无法启动

    我正在尝试在全新的 k8s 集群中使用操作符创建 prometheus 我使用以下文件 我正在创建一个命名空间监控 应用这个文件 就可以正常工作了 apiVersion apps v1beta2 kind Deployment metada
  • Prometheus(在 Docker 容器中)无法在主机上抓取目标

    Prometheus 在 docker 容器内运行 版本 18 09 2 内部版本 6247962 docker compose xml如下 并且抓取目标已打开localhost 8000它是由 Python 3 脚本创建的 失败的抓取目标
  • Grafana - 是否可以在基于 Loki 的仪表板查询中使用变量?

    我正在 Grafana 上开发基于 Loki 的仪表板 我有一个用于在 Loki 跟踪日志中搜索文本的面板 当前查询如下 job abc service searchTrace json line format if trace messa
  • Prometheus 来源的时间序列:如何将空值设置为零?

    使用 Docker Grafana 8 1 5 使用时间序列图 我正在绘制Prometheus Counter来源 有一个label as a time series 按标签 并且需要将所有空 缺失值填充为零 这是应用于的查询Prometh
  • TimeStream + Grafana:无法识别数据中的序列

    在 AWS Timestream 上跳跃 我在 grafana 集成方面遇到了一些问题 我构建了一个查询 返回按天和 事物 分组的事件计数 并希望在图表中显示该结果 甚至哪一个都不重要 In a table the data is disp
  • 从 celery 工作人员到普罗米修斯的自定义指标

    我有一些 celery 工作人员在 kubernetes 下的容器中运行 它们不会由 celery 自动缩放 并且每个都在单个进程中运行 即没有多处理 我想从他们那里获取一堆不同的指标到普罗米修斯中 我研究过 celery promethe
  • 将 Apache Camel 执行器指标发送到 Prometheus

    我正在尝试转发 添加 Actuator Camel 指标 actuator camelroutes 将交换 交易数量等指标 发送到 Prometheus Actuator 端点 有没有办法让我配置 Camel 将这些指标添加到 Promet
  • 更改 Grafana 端口

    我目前在 Grafana 中有 InfluxDB 提供仪表板 我最终将在服务器上部署这个堆栈 但是 Grafana 的默认端口是 80 我必须更改此端口 但我不知道如何更改 有人可以帮忙吗 Thanks 变化不仅在于 etc grafana
  • Prometheus scrape_timeout的使用

    在普罗米修斯配置中 我有以下规格的工作 job name name of my job scrape interval 5m scrape timeout 30s metrics path metrics scheme http 创建指标的
  • 如何在ubuntu中安装最新版本的prometheus/promtool?

    我下载的prometheus版本是2 3 2 wget https github com prometheus prometheus releases download v2 3 2 prometheus 2 3 2 linux amd64
  • pq:无法调整共享内存段的大小。设备上没有剩余空间

    我在仪表板上有许多面板 数量约为 6 个 用于显示数据点图表 对 PostgreSQL 数据库的 Dockerized 实例进行查询 直到最近 面板都工作正常 有些面板停止工作并报告如下错误 pq 无法将共享内存段 PostgreSQL 2
  • 让 Prometheus 发送 SQL 查询

    我正在尝试使用普罗米修斯 https prometheus io 监视我的 MySQL 数据库 但似乎找不到添加 SQL 查询的区域 例如 我想运行一个返回值的 SQL 查询 然后将该值添加到图表中 发送警报 有没有办法让 Promethe
  • 显示从午夜到现在的计数器数据

    我的应用程序包含一些计数器 它总是增加并且从不重置 我将 prometheus 与 grafana 一起使用 我需要的是显示与每天相关的计数器变化 换句话说 我需要获取从午夜到现在的计数器数据 例如 我可以查看月份图表并检查计数器每天如何变
  • 如何在Prometheus中查询容器内存限制

    我正在使用 Prometheus 工具来监控我的 Kubernetes 集群 我在部署中设置了资源限制 内存限制 并且需要配置一个面板来显示可用的总内存 请让我知道在 Prometheus 中运行以获得可用于我的部署的总内存限制所需的查询
  • 丢失系列/数据的警报

    我试图了解当指标不再被抓取时如何让 Grafana 提醒我 我在这个例子中使用的指标是mongodb instance uptime seconds 当实例出现故障时 不再生成指标 导致 Prometheus 中指标丢失 此时警报已触发wh
  • 如何使用Prometheus存储Grafana可视化的数据

    在Python的帮助下request get and json loads函数 我能够从 URL 获取数据 数据包含实例列表 其中每个实例都有实例 ID 状态等指标 我的问题是有什么办法可以将这些指标上传到 Prometheus 吗 我研究

随机推荐