Skip to content
View as Markdown

Flow

Source definition: src/bitdrift/public/unary/workflows/v1/workflow.proto#L113-L139

An individual flow within a workflow.

Field Type Description
steps array of bitdrift.public.unary.workflows.v1.Step
between 1 and 100 items
The steps that make up this flow.
exclusive bitdrift.public.unary.workflows.v1.Flow.ExclusiveFlow(Only one of exclusive, or parallel can be set) Any match on the initial step causes the flow to reset. This is the default if not specified.
parallel bitdrift.public.unary.workflows.v1.Flow.ParallelFlow(Only one of parallel, or exclusive can be set) Multiple "runs" of the flow can occur in parallel. Runs are replaced FIFO if the active runs exceeds max_active_runs. A new run that matches and extracts the same field values on the initial step as an existing active run will replace the existing run. This execution mode is primarily used for flows that correlate on a specific field value.

Example

JSON
{
  "exclusive": {},
  "steps": [
    {
      "exit_conditions": [
        {
          "match_rule": {
            "generic_match": {
              "base_matcher": {
                "log_field": "field_name",
                "operator": "EQUAL",
                "string_value": "example"
              }
            },
            "match_id": "_i1yUnHjKfmWpCaD5Tazo",
            "sample_rate": 100
          }
        }
      ],
      "loop_match_id": "_i1yUnHjKfmWpCaD5Tazo",
      "match_rule": {
        "generic_match": {
          "base_matcher": {
            "log_field": "field_name",
            "operator": "EQUAL",
            "string_value": "example"
          }
        },
        "match_id": "_i1yUnHjKfmWpCaD5Tazo",
        "sample_rate": 100
      },
      "save_fields": [
        {
          "field_name": "",
          "id": "",
          "regex_capture": ""
        }
      ]
    }
  ]
}

Flow.ExclusiveFlow

Source definition: src/bitdrift/public/unary/workflows/v1/workflow.proto#L114-L115

No fields

Flow.ParallelFlow

Source definition: src/bitdrift/public/unary/workflows/v1/workflow.proto#L117-L120

Field Type Description
max_active_runs optional uint32 The maximum number of active "runs" for this flow. Defaults to 10 if not specified.

Example

JSON
{
  "max_active_runs": 1
}