【问题标题】:How to monitor a spring-boot service by creating a ServiceMonitor?如何通过创建 ServiceMonitor 来监控 spring-boot 服务?
【发布时间】:2019-04-12 14:12:03
【问题描述】:

我正在尝试创建一个 servicemonitor,它将指示 prometheus 从我的 spring-boot 服务中抓取指标,但找不到正确的方法。

我有一个启用 prometheus 的简单微服务,see github for source

我可以在本地运行它,也可以部署到 openshift 中。在这两种情况下,我都可以看到来自 http://:/actuator/prometheus 端点的指标输出。

由于Openshift 4.0 Developer Preview 带有prometheus 和prometheus operator,我想简单地创建一个servicemontior 对象,该对象将触发操作员创建prometheus 配置,该配置将由pod 指标端点抓取,但我似乎无法做到工作,尽管尝试了各种教程。

这是我的 servicemonitor.yaml

apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
  name: profile-svc-monitor
  namespace: openshift-monitoring
  labels:
    app: profile-svc
spec:
  selector:
    matchLabels:
      deploymentconfig: profile-svc
    namespaceSelector:
      matchNames:
      - my-project
  endpoints:
  - port: http
    scheme: http
    path: '/actuator/prometheus'
    interval: 15s
    honorLabels: false

创建对象后,prometheus 控制台显示已创建抓取规则,但我看不到任何 pod。在菜单“状态”->“目标”下,它显示

openshift-monitoring/profile-svc-monitor/0 (0/0 up)

任何人都可以对此有所了解吗?

【问题讨论】:

    标签: spring-boot kubernetes openshift prometheus


    【解决方案1】:

    您的namespaceSelector 应与selector 处于同一级别。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-08-02
      • 2015-03-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多