Reference

operations.deadLetters queries

Package Trax.Api.GraphQLSurface GraphQL schemaSource DeadLetterQueries.cs

DeadLetterQueries, the type behind operations { deadLetters { ... } }. Dead letters are the manifests that failed more times than their MaxRetries (see Dead Letters & Cleanup). The requeue and acknowledge mutations are under operations.deadLetters on the mutation type.

query {
  operations {
    deadLetters {
      deadLetters(status: AWAITING_INTERVENTION, take: 10) {
        items { id manifestId manifestName manifestExternalId status reason retryCountAtDeadLetter deadLetteredAt }
        totalCount
        nextCursor
      }
      deadLetter(id: 42) { status resolvedAt resolutionNote retryMetadataId }
    }
  }
}

deadLetters

ParameterTypeDefaultDescription
skipInt!0Number of records to skip (offset pagination)
takeInt!25Number of records to return. See Page size
statusDeadLetterStatusnullAWAITING_INTERVENTION, RETRIED or ACKNOWLEDGED
afterIdLongnullKeyset cursor. See Pagination
manifestIdLongnullOnly the dead letters of this manifest, served by ix_dead_letter_manifest_id. The dashboard's dead-letter page reads a manifest's failed runs with executions(manifestId:, trainState: FAILED) and the latest one's detail with executionDetail

Returns: PagedResult<DeadLetterSummary>

deadLetter

ParameterTypeRequiredDescription
idLong!YesThe dead letter's id

Returns: DeadLetterSummary, or null when no dead letter has that id.

DeadLetterSummary fields

FieldTypeDescription
idLong!Dead letter id
manifestIdLong!The manifest that was dead-lettered
manifestNameString!The manifest's train name (the interface FullName), not its external id
manifestExternalIdStringThe manifest's external id, the name it was scheduled under; null when the manifest can no longer be read
statusDeadLetterStatus!AWAITING_INTERVENTION until an operator requeues (RETRIED) or acknowledges (ACKNOWLEDGED) it
deadLetteredAtDateTime!When the ManifestManager wrote it
reasonString!For example Max retries exceeded: (3) failures > (2) max retries
retryCountAtDeadLetterInt!The counted failures when it was written
resolvedAtDateTimeWhen it was requeued or acknowledged
resolutionNoteStringThe note an acknowledge took, or the one a requeue wrote: Re-queued (WorkQueue {id}), single or batch, or Re-queued with dead letter {id} (WorkQueue {id}) for a dead letter a batch requeue folded into another's run
retryMetadataIdLongThe run a requeue started, set once that run is dispatched

requeueAllJob

The operations.deadLetters namespace exposes paginated dead-letter reads (deadLetters, deadLetter) and requeueAllJob(id: UUID!), which reads a job requeueAllDeadLetters started. It returns the DeadLetterRequeueJob, or null when this node does not know the id: the job was started on another node, this node has restarted since, or it finished more than 24 hours ago. Read a job on the node that started it; the backlog itself is deadLetters(status: AWAITING_INTERVENTION) { totalCount } on any node.

query {
  operations {
    deadLetters {
      requeueAllJob(id: "6f1c2a7e-0d4b-4f53-9a3e-2b8f1c0d9e11") { status count message finishedAt }
    }
  }
}

See also