如何在java程序中收集普罗米修斯度量?

如何在java程序中收集普罗米修斯度量?,java,prometheus,prometheus-node-exporter,prometheus-java,Java,Prometheus,Prometheus Node Exporter,Prometheus Java,我搜索了大部分文章,但没有找到我期望的解决方案。我是普罗米修斯的新手。我需要通过java程序收集普罗米修斯度量。因此,我需要帮助通过java程序读取或获取普罗米修斯指标 任何帮助或建议都会有帮助 谢谢有很多方法可以做到这一点,请参考此如果您使用的是Spring boot 2.1.5.RELEASE,则 添加致动器和测微计普罗米修斯 尝试请求http://domain:port/actuator/prometheus 编辑 对于kubernetes im,使用实物部署: apiVersion: a

我搜索了大部分文章,但没有找到我期望的解决方案。我是普罗米修斯的新手。我需要通过java程序收集普罗米修斯度量。因此,我需要帮助通过java程序读取或获取普罗米修斯指标

任何帮助或建议都会有帮助


谢谢

有很多方法可以做到这一点,请参考此

如果您使用的是Spring boot 2.1.5.RELEASE,则

  • 添加致动器和测微计普罗米修斯
  • 尝试请求
    http://domain:port/actuator/prometheus
  • 编辑 对于kubernetes im,使用实物部署:

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: myAppName
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: myAppName
      template:
        metadata:
          labels:
            app: myAppName
          annotations:
            prometheus.io/scrape: "true"
            prometheus.io/port: "8091"
            prometheus.io/path: "/actuator/prometheus"
        spec:
          containers:
            - name: myAppName
              image: images.com/app-service:master
              imagePullPolicy: Always
              ports:
                - containerPort: 8091
              env:
                - name: INSTANCE_IP
                  valueFrom:
                    fieldRef:
                      fieldPath: status.podIP
                - name: SPRING_PROFILES_ACTIVE
                  value: "prod"
                - name: CONFIG_SERVER_ADDRESS
                  value: "http://config-server:8888"
              livenessProbe:
                failureThreshold: 3
                httpGet:
                  path: /actuator/health
                  port: 8091
                  scheme: HTTP
                initialDelaySeconds: 45
                periodSeconds: 10
                successThreshold: 1
                timeoutSeconds: 5
              readinessProbe:
                failureThreshold: 5
                httpGet:
                  path: /actuator/health
                  port: 8091
                  scheme: HTTP
                initialDelaySeconds: 30
                periodSeconds: 10
                successThreshold: 1
                timeoutSeconds: 5
          nodeSelector:
            servicetype: mvp-cluster
    

    您使用的是框架吗?JavaEE,Spring。。。?在没有任何细节的情况下,我所能建议的就是看一些示例项目,或者使用JHipster来建立一个带有度量的项目,然后在那里看一看。我使用的是spring boot应用程序,在一个pod中运行。是的。但是,我找不到合适的。获取errro错误:验证“src/main/resources/xxx autoscaler deployment.yaml”时出错:验证数据时出错:[ValidationError(deployment.spec.template):io.k8s.api.core.v1.PodTemplateSpec中的未知字段“livenessProbe”,ValidationError(deployment.spec.template):未知字段“nodeSelector”在io.k8s.api.core.v1.PodTemplateSpec中,ValidationError(Deployment.spec.template):io.k8s.api.core.v1.PodTemplateSpec中的未知字段“readinessProbe”;如果选择忽略这些错误,请使用--validate关闭验证=false@JDGuide使用什么版本和种类(Pod?)?livenessProbe和ReadinesProbe它们是可选的,您可以删除它们以测试您的应用程序。我已经删除并测试了它们。将更新正在发生的事情。若类是pojo而不是Springbean呢?
    management:
      endpoints:
        web:
          exposure:
           include: '*'
    
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: myAppName
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: myAppName
      template:
        metadata:
          labels:
            app: myAppName
          annotations:
            prometheus.io/scrape: "true"
            prometheus.io/port: "8091"
            prometheus.io/path: "/actuator/prometheus"
        spec:
          containers:
            - name: myAppName
              image: images.com/app-service:master
              imagePullPolicy: Always
              ports:
                - containerPort: 8091
              env:
                - name: INSTANCE_IP
                  valueFrom:
                    fieldRef:
                      fieldPath: status.podIP
                - name: SPRING_PROFILES_ACTIVE
                  value: "prod"
                - name: CONFIG_SERVER_ADDRESS
                  value: "http://config-server:8888"
              livenessProbe:
                failureThreshold: 3
                httpGet:
                  path: /actuator/health
                  port: 8091
                  scheme: HTTP
                initialDelaySeconds: 45
                periodSeconds: 10
                successThreshold: 1
                timeoutSeconds: 5
              readinessProbe:
                failureThreshold: 5
                httpGet:
                  path: /actuator/health
                  port: 8091
                  scheme: HTTP
                initialDelaySeconds: 30
                periodSeconds: 10
                successThreshold: 1
                timeoutSeconds: 5
          nodeSelector:
            servicetype: mvp-cluster