RousselTMLEARNING

Article · Dynatrace: From Discovery to Expertise

Workflows and AutomationEngine

1. Principle #

Trigger, tasks, conditions.

Structure #

Structure of a Dynatrace workflow
TriggerExample
EventA Davis problem opening, a security event, a custom event
ScheduleEvery Monday at 8 a.m.: cost report; every hour: check
On demandButton in an app or API call

Tasks are chained with conditions ({{ result("query").records | length > 0 }}), loops, retries and delays.

2. Example #

Notifying with context.

JavaScript task #

import { execution } from '@dynatrace-sdk/automation-utils';

export default async function ({ execution_id }) {
  const ex = await execution(execution_id);
  const problem = ex.event();                       // l'événement déclencheur
  const critical = problem['event.category'] === 'AVAILABILITY';
  return {
    channel: critical ? '#astreinte' : '#ops',
    text: `${problem['display_id']} : ${problem['event.name']} (${problem['affected_entity_ids']?.length ?? 0} entités)`,
  };
}

The next task (Slack or Teams) uses {{ result("decide").channel }} and {{ result("decide").text }}.

Good to know: The exact names of SDK functions and event fields depend on the version: start from the workflow templates offered in the app and adapt them.

3. Remediating safely #

Guardrails.

Rules #

  • Start with reversible actions: restart a pod, clear a cache, add a replica.
  • Add a human approval (wait task or button) for destructive actions.
  • Limit frequency: a workflow that restarts a service in a loop makes the incident worse.
  • Run workflows with a technical actor and minimal permissions.
Common mistake: A workflow runs with its actor's permissions: a workflow created by an administrator and editable by everyone is a privilege escalation.

📄 Workflows and AutomationEngine: automating notifications and remediation →

My progress

  • ⏱ Estimated time : ≈ 4 min

Sign in to track your progress and take notes. Sign in

💬 Recent discussions about this course

Ask a question about this lesson →See all discussions about this course

Course Glossary

AIOps (Artificial Intelligence for IT Operations)

The use of artificial intelligence and machine learning to automate and improve IT operations (e.g., anomaly detection, reducing alert noise).

OpenTelemetry

An open source framework providing standards, APIs, and SDKs to collect and export observability data (traces, metrics, logs) in an agnostic way.

Core Web Vitals

Set of three metrics defined by Google to measure the real experience of a web page: loading (LCP (Largest Contentful Paint)), responsiveness (INP (In...

LCP (Largest Contentful Paint)

Time until the largest visible element of the page (image, video or text block) is rendered: it shows when the main content appears. Loading metric of...

INP (Interaction to Next Paint)

Latency of interactions (click, tap, key press) observed over the whole visit: the delay between the user's action and the next paint. The reported va...

CLS (Cumulative Layout Shift)

Measure of visual stability: the sum of unexpected layout shifts (a button moving just as you click, text pushed down by an ad). Unitless, computed ov...

FCP (First Contentful Paint)

Time until the first content (text, image, SVG) is rendered: the moment the user sees the page start loading. It is not a Core Web Vital, but it helps...

TTFB (Time to First Byte)

Time between the start of navigation and the arrival of the first byte of the response: it adds up redirects, DNS, TCP/TLS connection and server proce...

FID (First Input Delay)

Former responsiveness metric of the Core Web Vitals: the delay before the browser starts handling the first interaction (good ≤ 100 ms). It ignored la...

TBT (Total Blocking Time)

Lab metric (Lighthouse): the sum, between FCP (First Contentful Paint) and the end of loading, of the blocking part of each long task (over 50 ms) on ...

CrUX (Chrome UX Report)

Google's public dataset aggregating the Core Web Vitals measured from real Chrome users (at the 75th percentile, per origin and URL, over a rolling 28...

Lighthouse

Google's free audit tool, built into Chrome DevTools and PageSpeed Insights: it loads the page in a simulated environment and scores performance, acce...

Apdex

Application Performance Index: a satisfaction score between 0 and 1 based on a time threshold T. Requests under T are “satisfied”, between T and 4T “t...

Recommended Articles

Problem management in Dynatrace: Davis, the problem page, notifications and auto-remediation

Understand the problems detected by Davis, read a problem page (root cause, impact, timeline), co...

Advanced Dynatrace alerting: metric events, alerting profiles and notifications

Build useful Dynatrace alerting: metric events and anomaly detectors, Davis events, alerting prof...

Grail: the Dynatrace data lakehouse and the DQL language

Grail stores all Dynatrace SaaS observability data (logs, metrics, traces, events, entities) with...

Service-Level Objectives (new platform) in Dynatrace

Define SLOs in DQL on Grail, start from templates and alert on burn rate.

Dynatrace Real User Monitoring: injection, web applications and verification

Set up real user monitoring in Dynatrace: automatic injection by OneAgent, agentless monitoring, ...

Dynatrace Synthetic Monitoring: complete guide and best practices

Learn how to use Dynatrace Synthetic Monitoring to proactively monitor your applications, from th...

License consumption types

Understand the evolution of billing in Dynatrace: the difference between the old licensing model ...

Advanced Davis AI: anomaly detection, causal, predictive and generative AI

Understand Davis AI: static thresholds, auto-adaptive and seasonal baselines, causal analysis and...

Differences between Technologies and Services in Dynatrace

In Dynatrace, the concepts of 'Technology' and 'Services' help organize and monitor application p...

Support us

♥ SUPPORT US

Support RousselTM Learning

Courses, articles, labs and certificates stay free with no intrusive ads. A voluntary contribution, of any amount you choose, pays for hosting, lab environments and new content.

Contribute with PayPal Any amount · card or PayPal accountLearn more
QR code PayPal
Or scan this QR code with your phone

Thank you, every contribution counts!