ShedLock-不在Kubernetes上执行

koaltpgm  于 2022-09-19  发布在  Kubernetes
关注(0)|答案(2)|浏览(131)

我使用的是Shedlock4.22.0版和JDBC集成。我有一个配置类

@Configuration
@EnableScheduling
@EnableSchedulerLock(defaultLockAtMostFor = "PT30S")
public class ShedLockConfiguration {
   @Bean
   public LockProvider lockProvider(DataSource dataSource) {
        return new JdbcTemplateLockProvider(dataSource);
   }
}

对于执行,我使用注解@SchedulerLock.eg。

@SchedulerLock(name = "MyTask", lockAtMostFor = "PT1M", lockAtLeastFor = "PT1M")

一切都在本地PC上完美运行,但当应用程序部署在Kubernetes(AKS)上时,不会触发任何任务。日志为空。应用程序启动后什么都不做
我还将调试添加到了上的spring配置

logging:
  level:
    net.javacrumbs.shedlock: DEBUG

没有记录任何内容

whlutmcx

whlutmcx1#

执行应通过@Scheduledannotation触发。ShedLock只阻止并行任务执行,不调度任何内容。如果您有@Scheduled注解,请检查数据库中的shedlock表,如故障排除中所述。

avwztpqn

avwztpqn2#

我解决了这个问题。服务器上的时区有问题。由于本地PC上的时区不同,任务提前1小时锁定。我从shedlock表中删除了所有行

相关问题