Skip to content

Observability Rule Triggers

Observability provides patterns to help with the construction of meaningful rules based on a standard trigger-condition-action format.

A trigger is a situation that kicks off an action when its condition is met; it is the something in the pattern When something <is condition> then do <action>.

Tip

Looking for examples? See Rule Patterns and Examples.

Task status

Task status triggers can be set for batch pipeline tasks with a failed, completed, running, or completed with warnings status.

  • Only one status can be selected per task status rule.
  • Task status rules will only trigger for batch pipeline components.

Runs

Run rules can be set for batch pipeline run statuses, timeliness, and unexpected changes.

  • Only one trigger can be selected per run rule.
  • Run rules will only trigger for batch pipeline components.
  • To trigger missing status, late start, or late end, an expected schedule must first be set for the batch pipelines included in the journey.

Advanced run options

You can configure advanced conditions for all cases except running status.

Note

Rules set with advanced options are not limited to runs within an instance but apply to batch pipelines at the journey level.

  • After <integer> occurrences of this status in a row: The rule condition is only met once the selected trigger has occurred X number of times in a row.
    • The default value is 1. That is, if no value is specified, the condition is met after the first occurrence.
    • The count is not limited by instance and may trigger after several instances have occurred.
    • In a row resets the count each time a status occurs that is not the one selected.
  • Group by run name: Determines whether the runs are grouped by the run_name property.
    • If no value is sent for the run name, the default value is null.
    • Null run names are considered a group.
  • Trigger action for each subsequent occurrence of this status: Once the condition is met, the action happens for each future occurrence of the status.

Message log (log matches)

Message log triggers can be set for severity log levels of error, warning, and/or info.

  • You can select one or more log levels per rule.
  • As part of the condition, you can include regex patterns to check against the log message.
  • Defining a level is optional and including a regex message is optional.
  • In the UI, this rule is called log matches.

Tip

Use a tool like regex101 or RegExr to test your regex rule patterns.

Test outcomes (test status)

Test outcome triggers can be set for tests with a failed, warning, or passed status.

  • Only one status can be selected per rule.
  • In the UI, this rule is called test status.

Instance alert

Instance alert triggers can be set for instances with error-level and/or warning-level alerts.

  • You can select one or more alert types per rule.
  • The condition For is not available for this rule because the trigger always applies to the entire instance.
  • Error-level alerts represent:
    • An instance that does not align with its journey's sequence.
    • An instance that has ended but is incomplete relative to its journey.
  • Warning-level alerts include a dataset component write operation that didn't occur within the expected arrival window.
    • To trigger Dataset not ready, an expected arrival window must first be set for the datasets included in the journey.