1. Principle #
Trigger, tasks, conditions.
Structure #
| Trigger | Example |
|---|---|
| Event | A Davis problem opening, a security event, a custom event |
| Schedule | Every Monday at 8 a.m.: cost report; every hour: check |
| On demand | Button 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.
My progress
Sign in to track your progress and take notes. Sign in
💬 Recent discussions about this course
- Dynatrace : mes pods Kubernetes ne sont pas instrumentés malgré le DynaKube✓ solved · 1 reply(ies)
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...