在 spring-mvc 中创建期间配置 kafka 主题保留策略?

Configure kafka topic retention policy during creation in spring-mvc?

在创建期间配置所有主题的保留策略

尝试使用 spring 配置 rentention.ms,因为我收到以下错误:

原因:java.util.concurrent.ExecutionException:org.apache.kafka.common.errors.PolicyViolationException:指定的 retention.ms 无效。允许的范围是 [3600000..2592000000] 从我读到的新值是 -1(无穷大)所以超出了那个范围

按照里面的内容 ,我添加了下面的代码,但似乎没有效果。 ideas/hints 关于如何解决这个问题?

ApplicationConfigurationTest.java
  @test
   public void kafkaAdmin () {
       KafkaAdmin admin = configuration.admin();
       assertThat(admin, instanceOf(KafkaAdmin.class));
   }

ApplicationConfiguration.java
    @Bean
   public KafkaAdmin admin() {
       Map<String, Object> configs = new HashMap<>();
       configs.put(TopicConfig.RETENTION_MS_CONFIG, "1680000");
       return new KafkaAdmin(configs);
   }

通过设置值找到解决方案
spring.kafka.streams.topic.retention.ms: 86400000
在 application.yml.
我们的应用程序使用 spring mvc,因此使用 spring 表示法。
topic.retention.ms是streams config中需要设置的值
86400000 是一个随机值,因为它在 [3600000..2592000000]

范围内