Skip to content
This repository has been archived by the owner on Dec 13, 2023. It is now read-only.

Latest commit

 

History

History
49 lines (36 loc) · 2.08 KB

File metadata and controls

49 lines (36 loc) · 2.08 KB

Workflow Event Listeners

Workflow Event listeners can be configured for the purpose in Conductor:

  1. Remove and/or archive workflows from primary datasource (e.g. Redis) once the workflow reaches a terminal status
  2. Publish a message to a conductor queue as the workflows complete that can be used to trigger other workflows

Published Artifacts

Group: com.netflix.conductor

Published Artifact Description
conductor-workflow-event-listener Event Listeners for Conductor

Backward Compatibility

Workflow event listeners are part of conductor-contribs binary as well - if you are already consuming contribs module as part of your build, you do not need to add this as a separate dependency. Core conductor-server also includes event listeners via contribs dependency.

Configuration

Workflow Archival

Set the following properties to archive the workflows as they complete.
When archived, the workflow execution is removed from the primary DAO and pushed to index store (e.g. Elasticsearch)

conductor.workflow-status-listener.type=archive

#when non-zero, workflows are removed from the primary storage after the TTL expiry
conductor.workflow-status-listener.archival.ttlDuration=0

#number of threads for the background worker that processes the archival request
conductor.workflow-status-listener.archival.delayQueueWorkerThreadCount=5

Queue publisher

Publish a summary of workflow WorkflowSummary to a queue as the workflow gets completed.

conductor.workflow-status-listener.type=queue_publisher

#Queue for successful completion of a workflow
conductor.workflow-status-listener.queue-publisher.successQueue=_callbackSuccessQueue

#Queue for failed workflows
conductor.workflow-status-listener.queue-publisher.failureQueue=_callbackFailureQueue

#Queue for terminal state workflows (success or failed)
conductor.workflow-status-listener.queue-publisher.finalizeQueue=_callbackFinalizeQueue