在 Spring Cloud 数据流中监控自定义 Stream 应用程序 [英] Monitoring custom Stream apps in Spring Cloud data flow

查看:22
本文介绍了在 Spring Cloud 数据流中监控自定义 Stream 应用程序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用 prometheus 和 grafana 进行 scdf 及其监控.我遵循了可用的文档并能够部署示例流并能够查看 grafana 中的指标.

I am trying scdf and its monitoring with prometheus and grafana. I followed the documentation available and able to deploy the sample stream and able to see the metrics in the grafana.

我创建了一个带有一些自定义流应用程序的流(除了提供的 rabbit mq starter 应用程序).

I have created a stream with some custom stream app (other than the supplied rabbit mq starter apps).

流:htt |参与者 |日志

Stream: htt | participant | log

但是我无法在 gafana 中看到参与者"应用程序指标.但能够查看 http 和日志应用的指标.​​

But am not able see the "participant" application metrics in gafana. But able to see the metrics of http and log apps.

在 application.properties 中添加了以下属性.

Added below properties in application.properties.

management.endpoint.metrics.enabled=true
management.endpoints.web.exposure.include=*
management.endpoint.prometheus.enabled=true
management.metrics.export.prometheus.enabled=true
spring.cloud.streamapp.security.enabled=false

添加了以下依赖项:

<dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>
    <!--&lt;!&ndash; https://mvnrepository.com/artifact/org.springframework.cloud.stream.app/app-starters-common &ndash;&gt;-->
    <!--<dependency>-->
        <!--<groupId>org.springframework.cloud.stream.app</groupId>-->
        <!--<artifactId>app-starters-common</artifactId>-->
        <!--<version>2.1.1.RELEASE</version>-->
        <!--<type>pom</type>-->
    <!--</dependency>-->

    <dependency>
        <groupId>io.micrometer</groupId>
        <artifactId>micrometer-registry-prometheus</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-amqp</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-stream</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-stream-binder-rabbit</artifactId>
    </dependency>

添加app-starters-common后:org.springframework.cloud.stream.app依赖localhost:<端口 >/打开一个登录页面.

After adding app-starters-common:org.springframework.cloud.stream.app dependency localhost:< port >/ opens a login page.

推荐答案

我在寻找相同问题的答案时遇到了这个问题.

I came across this question while looking answers for the same.

这是我的工作代码片段:-

Here is my working code snippet:-

    <dependency>
            <groupId>org.springframework.cloud.stream.app</groupId>
            <artifactId>app-starters-micrometer-common</artifactId>
            <version>2.1.2.RELEASE</version>
    </dependency>
    <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>
        <dependency>
            <groupId>io.micrometer</groupId>
            <artifactId>micrometer-registry-prometheus</artifactId>
    </dependency>
    <dependency>
            <groupId>io.micrometer</groupId>
            <artifactId>micrometer-registry-jmx</artifactId>
    </dependency>

更改应用程序属性以启用 prometheus 并禁用安全性(登录页面)

application property change to enable prometheus and disable security(login page)

management.endpoints.web.exposure.include=*
management.metrics.export.prometheus.enabled=true

-- 删除安全性(登录页面),由 app-starter-micrometre-common 依赖项自动添加.

-- this one to remove security (login page), which was automatically added by app-starter-micrometre-common dependency.

spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration, org.springframework.boot.actuate.autoconfigure.security.servlet.ManagementWebSecurityAutoConfiguration

排除依赖项,我排除了 config-client 和其他一些,因为我的应用程序中不需要它们.

exclude the dependency, I excluded config-client and few other since I don't need them in my application.

<dependency>
            <groupId>org.springframework.cloud.stream.app</groupId>
            <artifactId>app-starters-micrometer-common</artifactId>
            <version>2.1.2.RELEASE</version>
            <exclusions>
                <exclusion>
                    <artifactId>spring-security-config</artifactId>
                    <groupId>org.springframework.security</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>spring-cloud-services-starter-config-client</artifactId>
                    <groupId>io.pivotal.spring.cloud</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>*</artifactId>
                    <groupId>org.springframework.boot</groupId>
                </exclusion>
            </exclusions>
        </dependency>

这篇关于在 Spring Cloud 数据流中监控自定义 Stream 应用程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆