Pular para o conteúdo principal

Incidentes

Um Incident é aberto quando uma ExecutableTask esgota suas tentativas de retry, ou quando um erro de negócio não tem BOUNDARY_ERROR_HANDLER correspondente (ver Retry e Resiliência e Tratando Erros de Negócio).

OperaçãoEndpoint
Buscar um incidente por idGET /incidents/{id}
Retentar um incidente abertoPUT /incidents/{id}/retry
Incidentes de uma instânciaGET /process-instances/{id}/incidents (ver Instâncias de Processo)

GET /incidents/{id} requer QueryRepository; PUT /incidents/{id}/retry requer KikwiflowEngine.

Buscar por id​

GET /incidents/{id}

200 OK com o Incident completo, ou 404 (NOT_FOUND).

CampoPapel
idIdentificador do incidente.
typeFAILED_JOB (a tarefa esgotou as retentativas numa exceção técnica) ou UNHANDLED_BUSINESS_ERROR (um ProcessErrorException sem BOUNDARY_ERROR_HANDLER correspondente).
message / stackTraceDetalhe do erro capturado.
processDefinitionId / processInstanceIdOnde o incidente ocorreu.
taskDefinitionIdid do nó na definição — cruza com o diagrama.
executionIdid da ExecutableTask que falhou — é o que retry reativa.
statusOPEN ou RESOLVED.
createdAtQuando o incidente foi aberto.

Retentar​

PUT /incidents/{id}/retry

Sem corpo. Reativa a ExecutableTask associada (status → PENDING, retries restaurado ao máximo — o declarado na retryPolicy do próprio nó, ou 3 se o nó não declarar uma política própria — esse default não é configurável por propriedade kikwiflow.*) e marca o incidente como RESOLVED, de forma atômica. Resposta 204 No Content.

SituaçãoResultado
id inexistente404 (NOT_FOUND)
Incidente existe mas não está OPEN (já RESOLVED)409 (CONFLICT) — só incidentes OPEN podem ser retentados
ExecutableTask associada não existe mais (ex.: instância apagada via PUT /process-instances/{id})404 (NOT_FOUND)