RousselTMLEARNING

Article · Dynatrace: From Discovery to Expertise

AppEngine and custom apps

1. Why an app #

When dashboards are no longer enough.

Use cases #

Architecture of an AppEngine app
  • A tailor-made business view (order journey, status of a fleet of stores) combining Dynatrace data and internal data.
  • An operations tool (managing maintenance windows, guided actions) for support teams.
  • An integration with a third-party system via app functions.

2. Developing #

The Dynatrace App Toolkit.

Commands #

npx dt-app@latest create --environment-url https://<env>.apps.dynatrace.com
cd mon-app
npm run start        # développement local relié à l'environnement
npm run deploy       # publication dans l'environnement
// Requête Grail depuis l'interface
import { useDql } from '@dynatrace-sdk/react-hooks';

export const ErrorsByService = () => {
  const { data, isLoading } = useDql({
    query: 'fetch logs | filter loglevel == "ERROR" | summarize errors = count(), by: { service.name } | sort errors desc | limit 10',
  });
  return isLoading ? 'Chargement…' : <pre>{JSON.stringify(data?.records, null, 2)}</pre>;
};

The required permissions (reading logs, documents...) are declared in app.config.json; the user must also have these rights for the app to read the data.

Good to know: Dynatrace evolves very quickly (new platform, Grail, apps): check screen names and API versions in your environment's documentation.

📄 AppEngine and custom Dynatrace apps →

My progress

  • ⏱ Estimated time : ≈ 3 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

Dynatrace apps: Smartscape, containers, Kubernetes, cloud functions and network

Navigate the Dynatrace apps: Smartscape topology, sub-applications, loading waterfall, containers...

Dynatrace Credential Vault: securing and managing your secrets

Discover how the Dynatrace Credential Vault app lets you securely manage passwords, tokens and ce...

Custom applications: the Salesforce example in Dynatrace

Monitor an application without a classic web agent, with a custom application and Salesforce Insi...

Service types in Dynatrace: web, database, messaging, custom and unified services

What a service is for Dynatrace, the automatically detected service types (web requests, web serv...

Dynatrace SaaS vs Managed: choosing, organizing the cluster and environments

Choose between Dynatrace SaaS and Managed, organize the cluster and environments, get to grips wi...

The Dynatrace Investigations app: investigating Grail data

Discover the Investigations app: DQL queries, extraction with DPL Architect, enrichment, query tr...

Dynatrace Real User Monitoring: injection, web applications and verification

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

Grail: the Dynatrace data lakehouse and the DQL language

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

OneAgent: collection methods, installation, Kubernetes and health

Dynatrace collection methods (OneAgent, OpenTelemetry, Prometheus, API), installing OneAgent with...

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!