Exposing on hold
This commit is contained in:
parent
44cd5c2182
commit
8a042a3fd3
@ -9,13 +9,16 @@ data class CoordinatorHealth(
|
|||||||
val activeTasks: Int,
|
val activeTasks: Int,
|
||||||
val queuedTasks: Int,
|
val queuedTasks: Int,
|
||||||
val failedTasks: Int,
|
val failedTasks: Int,
|
||||||
|
val sequencesOnHold: Int,
|
||||||
val lastActivity: Instant?,
|
val lastActivity: Instant?,
|
||||||
|
|
||||||
// IDs for UI linking
|
// IDs for UI linking
|
||||||
val abandonedTaskIds: List<String>,
|
val abandonedTaskIds: List<String>,
|
||||||
val stalledTaskIds: List<String>,
|
val stalledTaskIds: List<String>,
|
||||||
|
val sequencesOnHoldIds: List<String>,
|
||||||
val overdueSequenceIds: List<String>,
|
val overdueSequenceIds: List<String>,
|
||||||
|
|
||||||
|
|
||||||
// Detailed sequence info
|
// Detailed sequence info
|
||||||
val overdueSequences: List<SequenceHealth>,
|
val overdueSequences: List<SequenceHealth>,
|
||||||
|
|
||||||
|
|||||||
@ -7,6 +7,7 @@ import no.iktdev.mediaprocessing.coordinator.dto.health.SequenceHealth
|
|||||||
import no.iktdev.mediaprocessing.coordinator.dto.rate.EventRate
|
import no.iktdev.mediaprocessing.coordinator.dto.rate.EventRate
|
||||||
import no.iktdev.mediaprocessing.coordinator.util.DiskInfo
|
import no.iktdev.mediaprocessing.coordinator.util.DiskInfo
|
||||||
import no.iktdev.mediaprocessing.coordinator.util.getDiskInfoFor
|
import no.iktdev.mediaprocessing.coordinator.util.getDiskInfoFor
|
||||||
|
import no.iktdev.mediaprocessing.shared.common.dto.CurrentState
|
||||||
import no.iktdev.mediaprocessing.shared.common.rules.EventLifecycleRules
|
import no.iktdev.mediaprocessing.shared.common.rules.EventLifecycleRules
|
||||||
import no.iktdev.mediaprocessing.shared.common.rules.TaskLifecycleRules
|
import no.iktdev.mediaprocessing.shared.common.rules.TaskLifecycleRules
|
||||||
import no.iktdev.mediaprocessing.shared.database.stores.TaskStore
|
import no.iktdev.mediaprocessing.shared.database.stores.TaskStore
|
||||||
@ -18,6 +19,7 @@ import java.time.Instant
|
|||||||
class CoordinatorHealthService(
|
class CoordinatorHealthService(
|
||||||
private val taskService: TaskService,
|
private val taskService: TaskService,
|
||||||
private val eventService: EventService,
|
private val eventService: EventService,
|
||||||
|
private val aggregator: SequenceAggregatorService,
|
||||||
private val coordinatorEnv: CoordinatorEnv
|
private val coordinatorEnv: CoordinatorEnv
|
||||||
) {
|
) {
|
||||||
|
|
||||||
@ -37,6 +39,7 @@ class CoordinatorHealthService(
|
|||||||
.map { it.taskId }
|
.map { it.taskId }
|
||||||
|
|
||||||
val failedTasks = taskService.getFailedTasks()
|
val failedTasks = taskService.getFailedTasks()
|
||||||
|
val sequencesOnHold = aggregator.getActiveSequences().filter { it.currentState == CurrentState.OnHold }
|
||||||
|
|
||||||
// --- SEQUENCE HEALTH ---
|
// --- SEQUENCE HEALTH ---
|
||||||
val overdueSequences = incompleteSequences
|
val overdueSequences = incompleteSequences
|
||||||
@ -99,6 +102,8 @@ class CoordinatorHealthService(
|
|||||||
|
|
||||||
abandonedTaskIds = abandonedTaskIds.map { it.toString() },
|
abandonedTaskIds = abandonedTaskIds.map { it.toString() },
|
||||||
stalledTaskIds = stalledTaskIds.map { it.toString() },
|
stalledTaskIds = stalledTaskIds.map { it.toString() },
|
||||||
|
sequencesOnHold = sequencesOnHold.size,
|
||||||
|
sequencesOnHoldIds = sequencesOnHold.map { it.referenceId },
|
||||||
overdueSequenceIds = overdueSequenceIds,
|
overdueSequenceIds = overdueSequenceIds,
|
||||||
overdueSequences = overdueSequences,
|
overdueSequences = overdueSequences,
|
||||||
|
|
||||||
|
|||||||
@ -71,5 +71,4 @@ class EventService {
|
|||||||
|
|
||||||
fun getLastEventTimestamp(): Instant? = EventStore.getLastEventTimestamp()
|
fun getLastEventTimestamp(): Instant? = EventStore.getLastEventTimestamp()
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue
Block a user