Introduction to workflows

Latest Dynatrace

The Workflows app is a powerful tool that lets you automatically act on monitoring data.

  • Automatically react to Davis events or security problems.
  • Schedule reports in line with holidays and work hours.
  • Orchestrate IT processes across your entire IT landscape.
  • Connect to both cloud and locally gated services.
  • Combine out-of-the-box integrations with custom code.
  • Visualize automated processes in a graphical workflow interface.
  • Get live monitoring and a full audit trail of any automation execution.
  • Define flow logic with custom conditions, automatic retries, loops, and parallel processing.

For more information, see the quickstart example.

Authorization

To access the Workflows and view workflows, you need at least the following permissions.

Permission

Grants access to

app-engine:apps:run

List all apps and read the app bundles.

automation:workflows:read

View workflows.

storage:system:read

optional storage:event.provider = "AUTOMATION_ENGINE" 1

storage:buckets:read

optional storage:table.name = "dt.system.events" 1

View the execution history of simple workflows.

1

The conditions listed represent the most restrictive way to apply the permissions while still allowing access to the execution history. Any less restrictive application of these permissions will also provide the necessary access.

To write and execute workflows, the following additional permissions are required.

Permission
Grants access to
app-engine:functions:run
Use the function executor.
automation:workflows:run
Run workflows manually via the user interface or API.
automation:workflows:write
Write workflows. It includes creating, updating, and deleting a workflow. It also includes the workflow configuration with active schedule or event trigger configurations. Thus, the workflow is run based on these configurations.

You can grant users the automation:workflows:write permission where the automation:workflow-type = "SIMPLE" is specified. This means that they can create workflows with a single trigger and task. Since simple workflows don't consume workflow hours, this is a convenient way to give a broader user base access to workflows without the cost implication.

You might need additional permissions to run certain tasks in the Workflows app.

The Dynatrace Hub entry for Workflows lists all the permissions on the Technical information tab, in the User permissions section.

For more information about Workflows security, see User permissions for workflows.

Concepts

The Workflows app is your entry point to manage and monitor workflows. The app interacts with the automation service via its REST API. The automation service is responsible for processing your workflows and keeping track of the executions.

Workflow

A workflow specifies a repeatable process by assembling a series of tasks.

  • The sequence of tasks is defined by their transitions, which allow for execution in series, in parallel, and with conditional paths.
  • Workflows can be edited and monitored in a visual graph.

Simple workflow

A simple workflow specifies a repeatable process with only one task.

  • Reduced functionality workflow with only one task, limited logging for executions, limited task options and conditions, and no JavaScript tasks allowed.
  • No additional costs, as simple workflows don't consume workflow hours.

Task

Each step in a workflow is called a task.

  • A workflow keeps track of tasks and their order.
  • A task defines a unit of work (for example, Create Incident, Notify Ops in Slack, or Get error log count), including the conditions, retry behavior, timeouts and, most importantly, the input configuration required to achieve the work and provide a result to be used by subsequent tasks.

Action

An action is a generic, reusable function configured and triggered by tasks. For example, an action could be Create Jira Issue, while a task would execute the action with a specific configuration to Create Bug in Sample project.

  • Actions are the tools to be assembled in your workflows to fit your custom process.
  • Actions are provided out of the box by Dynatrace and partners and can be installed via Dynatrace Hub.

Execution

Workflows, tasks, and actions all define how work should be done. An execution represents a specific instance of running through that process.

  • An execution is triggered either by a schedule, by events, or manually via the Workflows app or the REST API.
  • Each execution of the same workflow might be different, depending on its parameters, inputs, and context.
  • Each run of a workflow can be found as an individual entry in the Executions table.

To list all executions in your environment, select Executions in the Workflows app header.

  • To filter the table, you can specify a combination of
    • Keyword: a search string
    • Workflow: the name of the workflow as displayed in the UI
    • Execution state: Success, Running, Error, or Warning
    • Trigger type: Manual, Schedule, or Event
    • Timeframe: a relative timeframe such as Last 2 hours or a custom timeframe with selectable From and To settings
  • To list executions of a particular workflow, find the workflow in the table and select More actions > View execution history in the Action column.

To list executions of the workflow you are editing, select Executions in the editor.

EdgeConnect

EdgeConnect allows you to reach your non-public services in workflow tasks. HTTP requests happening within any type of action or platform function can be proxied via EdgeConnect into the target network.

Any HTTP request (from your custom app, workflow, or an ad-hoc JavaScript code) that matches a defined host pattern is handled by an EdgeConnect instance you specify in the platform configuration. For more information, see Configure and deploy EdgeConnect.