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

执行器指标中未显示Spring Cloud stream kafka指标|Springboot2.2.2|SpringCloud Hoxton. SR4

上官高翰
2023-03-14

我没有看到使用执行器的kafka消费者/生产者指标 /actuator/metrics.只显示了基本的jvm指标。

{
"names": [
"jvm.buffer.memory.used",
"jvm.threads.states",
"jvm.memory.committed",
"spring.integration.channels",
"process.uptime",
"jvm.memory.used",
"jvm.gc.pause",
"logback.events",
"http.server.requests",
"jvm.memory.max",
"tomcat.sessions.active.current",
"jvm.buffer.total.capacity",
"system.cpu.usage",
"jvm.threads.live",
"jvm.classes.unloaded",
"jvm.classes.loaded",
"jvm.threads.peak",
"tomcat.sessions.rejected",
"tomcat.sessions.alive.max",
"jvm.gc.memory.promoted",
"jvm.buffer.count",
"jvm.gc.memory.allocated",
"tomcat.sessions.expired",
"tomcat.sessions.created",
"jvm.gc.max.data.size",
"system.cpu.count",
"spring.integration.handlers",
"spring.integration.sources",
"process.start.time",
"jvm.threads.daemon",
"tomcat.sessions.active.max",
"jvm.gc.live.data.size",
"process.cpu.usage"
]
}

我的应用程序工作正常,绑定看起来也可以,在 /actuator/bindings.可见

[
{
"bindingName": "send-kafka-out",
"name": "test.topic",
"group": null,
"pausable": false,
"state": "running",
"extendedInfo": {
"bindingDestination": "test.topic",
"ExtendedProducerProperties": {
"autoStartup": true,
"partitionCount": 1,
"headerMode": "headers",
"extension": {
"bufferSize": 16384,
"compressionType": "none",
"sync": false,
"sendTimeoutExpression": null,
"batchTimeout": 0,
"messageKeyExpression": null,
"headerPatterns": null,
"configuration": {},
"topic": {
"replicationFactor": null,
"replicasAssignments": {},
"properties": {}
},
"useTopicHeader": false,
"recordMetadataChannel": null
},
"validPartitionSelectorProperty": true,
"validPartitionKeyProperty": true
}
},
"input": false
}
]

下面是我的流配置

public interface KafkaStreams {
    String OUTPUT = "send-kafka-out";

    @Output(OUTPUT)
    MessageChannel getOutboundMessageChannel();

}

@SpringBootApplication
@EnableDiscoveryClient
@EnableJms
@EnableBinding(KafkaStreams.class)
@ComponentScan("com.test.connector.*")
public class ConnectorApplication {

    public static void main(String[] args) {
        SpringApplication.run(ConnectorApplication.class, args);
    }

}

下面是我的配置。yml公司

spring:
  jms:
    listener:
      auto-startup: true
      acknowledge-mode: AUTO
      max-concurrency: 10
      concurrency: 10
  cloud:
    stream:
      default-binder: kafka-default
      function:
        definition: 
      kafka:
        binder:
          brokers:
            - localhost:9092
          configuration:
            default.key.serde: org.apache.kafka.common.serialization.Serdes$StringSerde
            default.value.serde: org.apache.kafka.common.serialization.Serdes$BytesSerde
            commit.interval.ms: 1000
            #security:
            #  protocol: SASL_PLAINTEXT

      bindings:
        send-kafka-out:
          destination: test.topic
          contentType: text/plain
          group: output-group-1
          binder: kafka-default
          producer:
            header-mode: headers

      binders:
        kafka-default:
         type: kafka
         environment:
           spring:
             cloud:
               stream:
                kafka:
                  binder:
                    brokers: localhost:9092

我使用的是SpringBoot 2.2.2。发布,SpringCloud Hoxton。SR4和spring cloud stream活页夹kafka 3.0.4。释放。任何关于我缺少什么的建议都会有所帮助。

共有1个答案

张通
2023-03-14

您需要有输入绑定。Kafka活页夹指标仅支持消费者。看起来代码中只有一个输出绑定。我刚刚尝试了一个有消费者的快速应用程序,我能够检索到指标:

执行机构/指标/Spring。云流动粘合剂Kafka。偏移量

{"name":"spring.cloud.stream.binder.kafka.offset","描述":"特定组和主题的未消耗消息","base Unit": null,"测量":[{"统计":"值","值": 0.0}],"可用标签":[{"tag":"主题","值":["uppercase-in-0"]},{"标签":"组","值":["匿名.06730d87-0871-4b82-bd82-ae4958dbe2a3"]}]}

 类似资料:
  • 我有两个服务,和,其中向发送请求。此指标显示在服务的endpoint上: <代码>仪表。伺服。希斯特里克斯。hystrixcommand公司。http://pong.pongclient#hello().90 但它不会出现在endpoint上。此endpoint上会出现其他指标,但不会显示包含有关飞度/Hystrix超文本传输协议请求信息的伺服指标。 如何让这些指标出现在prometheusend

  • 我已经为我的spring boot应用程序配置了测微计和prometheus,我可以在endpoint/执行器/prometheus处看到以下指标(使用计时器生成): 但当我在Grafana中运行其中一个查询(针对prometheus实例配置)时,我没有看到任何结果。 这需要任何配置吗?

  • 是否有任何参考Spring靴2指标的详细留档。 我的意思是 > 同样在Spring靴1.5中。x、 我可以简单地使用heap、committed heap、gc count等。如何获得这些值? 还有一种方法可以在一次通话中获得所有指标。我的意思是在boot 2中获得我需要调用的所有指标。

  • 我正在尝试将endpoint可见的所有度量导出到StatsdMetricWriter。 到目前为止,我已经获得了以下配置类: 它写入了我添加到Statsd的所有度量,但我还想发送在endpoint上可见的系统/JVM度量。 我错过了什么?

  • 我用的是Spring靴。为了监视JVM内存,我正在使用Spring Boot Actuator的/metricsendpoint。 我无法理解键实际上代表什么: 有人能告诉我它们到底是什么吗? CMS(并发标记扫描)和MarkSweepCompact相同吗?我应该使用CMS(并发标记扫描)吗?或者我应该使用哪种GC算法?

  • 我试图通过spring Boot2实现的api向prometheus公开定时度量。我包含了以下依赖项。 我通过spring-cloud-starter-parent finchley.sr1来管理依赖关系,它给了我关于spring-boot-starter-acturet的2.0.4.release版本和关于micrometer-registry-prometheus的1.0.6版本。 /actu