Wie kann ich überprüfen, ob ein bestimmter Shedlock -Schlüssel aktiv ist?
Posted: 27 Feb 2025, 10:53
Ich arbeite an einer Springboot-App mit mehreren Chargen mit Shedlock < /p>
Ich möchte einen HTTP 400 auf einem meiner Endpunkte zurückgeben, wenn batch1 eine aktive Sperre hat. Gibt es eine Möglichkeit, die aktiven Schlösser mit Shedlock?
Meine andere Option ist es, die Shedlock -Tabelle, die ich erstellt habe>
Code: Select all
@SchedulerLock(name = "batch_lock_1", lockAtLeastFor = "PT5S", lockAtMostFor = "PT15M")
public boolean batch1 {
// ...
}
@SchedulerLock(name = "batch_lock_2", lockAtLeastFor = "PT5S", lockAtMostFor = "PT15M")
public boolean batch2 {
// ...
}
@SchedulerLock(name = "batch_lock_3", lockAtLeastFor = "PT5S", lockAtMostFor = "PT15M")
public boolean batch3 {
// ...
}
Code: Select all
@GetMapping
public void myEndpoint() {
if (SomeShedlockClass.isLockActive("batch_lock_1") {
throw new BadRequestException("Batch 1 is currently running");
}
// ...
}