Amazon DVA-C02: Monitoring, Logging & Debugging (CloudWatch, X-Ray, Tracing, Alarms) — Studiegids
Onderdeel van de AWS Developer Associate DVA-C02 — Studiegids. Oefen met geverifieerde antwoorden in het Amazon-examencentrum, of doe getimede oefentests op ExamRoll.io.
CloudWatch Logs, Metrics en Log Metric Filters
CloudWatch Logs is de primaire pipeline voor telemetrie van applicaties en platformen; ontwikkelaars zouden logs gestructureerd moeten ontwerpen (JSON), zodat Metrics en Insights ze betrouwbaar kunnen parsen. Voor custom applicatiemetrics, geef de voorkeur aan CloudWatch Embedded Metric Format (EMF) of PutMetricData voor directe dimensies en behoeften aan hoge resolutie; EMF voegt
undefined
JSON in logregels in en stelt CloudWatch in staat om veel metrics te extraheren in een enkele
undefined
-aanroep voor kosten- en doorvoerefficiëntie. Wanneer je metrics moet afleiden van tekstuele logs aan de servicekant, maak dan metric filters (
undefined
) aan voor een log group die filterpatronen mappen naar
undefined
; deze leveren CloudWatch-metrics op die in grafieken kunnen worden gezet en waarop alarmen kunnen worden ingesteld. Veelgebruikte operationele API’s zijn
undefined
,
undefined
en
undefined
(let op de limieten voor
undefined
en de batchgrootte van
undefined
), en
undefined
om een door de klant beheerde KMS-sleutel te koppelen aan een log group voor versleuteling in rust (encryption at rest). Let op IAM:
undefined
en
undefined
vereisen expliciete permissies, en KMS-grants moeten de service principal toestaan om sleutels te gebruiken voor versleuteling. Gebruik retentiebeleid (retention policies) om de kosten te beheersen en geef alleen de voorkeur aan metrics met hoge resolutie (
undefined
met
undefined
) wanneer je zichtbaarheid op sub-minuutniveau nodig hebt.
Tracing en X-Ray voor Gedistribueerde Systemen
Distributed tracing instrumenteert request-stromen over services heen om te onthullen waar latency en fouten optreden; AWS X-Ray is de geïntegreerde optie. Activeer Active tracing op Lambda-functies (Lambda
undefined
) en schakel X-Ray in voor API Gateway-stages om de X-Ray trace header door te geven. Gebruik de AWS X-Ray SDK in je runtime (
undefined
voor Node,
undefined
voor Python,
undefined
voor Java) om subsegmenten te maken, annotaties (geïndexeerd, kleine waarden) en metadata (niet-geïndexeerd, grotere objecten) toe te voegen. Vang downstream SDK-aanroepen af door AWS SDK-clients te wrappen met de X-Ray recorder, zodat de SDK automatisch requests naar S3, DynamoDB en HTTP-aanroepen instrumenteert. Voor gecontaineriseerde workloads, draai de X-Ray-daemon als een sidecar of gebruik de daemon-laag; deze accepteert UDP-pakketten (standaardpoort 2000) en batcht ze naar de X-Ray-service. Configureer samplingregels (
undefined
) om ruis te vermijden, maar pas regels aan of gebruik de SDK-override voor kritieke stromen die je altijd getraceerd wilt hebben. Houd rekening met de groottelimieten van segmentdocumenten en plaats nooit PII (persoonlijk identificeerbare informatie) in annotaties, omdat deze geïndexeerd en doorzoekbaar zijn.
Alarmen, Notificaties en Alerting Design
Alarmen moeten actiegerichte gebeurtenissen detecteren, ruis verminderen en integreren met runbooks. Gebruik CloudWatch Alarms op native metrics, custom metrics (van
undefined
of metric filters), of metric math-expressies; stem
undefined
en
undefined
af om ‘flapping’ te voorkomen en geef de voorkeur aan composite alarms voor condities met meerdere signalen (defecte downstream + verhoogde error rate) om het alertvolume te verminderen. Alarmacties kunnen publiceren naar SNS-topics voor menselijke/automatiseringsworkflows, Auto Scaling of Systems Manager OpsCenter aanroepen (
undefined
aanmaken), of routeren via EventBridge-regels voor complexe playbooks (
undefined
). Voor snelle on-call behoeften, gebruik een SNS -> HTTP-eindpunt of PagerDuty-integratie; voor geautomatiseerde herstelacties (remediation), gebruik EventBridge -> Step Functions of Lambda met least-privilege IAM. Overweeg anomaly detection-modellen voor het bepalen van een baseline voor verkeer en stel OK-drempels in met hysteresis. Veelvoorkomende valkuilen zijn het aanmaken van te veel gedimensioneerde alarmen (explosie van monitoringkosten), uitsluitend vertrouwen op triggers gebaseerd op één datumpunt, en het niet beveiligen van notificatie-topics (SNS access policies) zodat alerts niet lekken naar onbedoelde ontvangers.
Patronen voor probleemoplossing en best practices voor SDK/API
Begin met probleemoplossing door een verwachte versus een waargenomen tijdlijn op te stellen en correleer vervolgens logs, metrics en traces. Gebruik CloudWatch Logs Insights voor ad-hoc query’s (
undefined
) om pieken te vinden en stap vervolgens over op X-Ray traces voor gedetailleerde latencies. Controleer bij API’s die door Lambda worden ondersteund op cold starts, VPC ENI attach-tijden (voor functies in een VPC) en of Lambda Destinations of DLQ’s zijn geconfigureerd voor het vastleggen van mislukte asynchrone aanroepen. Gebruik voor het vastleggen van mislukte aanroepen Lambda Destinations (onFailure naar SNS, SQS of EventBridge) of een async DLQ om payloads te bewaren. Behandel bij het instrumenteren van code API-throttling door exponentiële backoff met jitter te implementeren en 429-fouten te monitoren via metric filters of EMF-tellers. Veelvoorkomende valkuilen:
undefined
vereist eerst de juiste sequence token en
undefined
;
undefined
kan worden gethrottled—batch en stuur geaggregeerde metrics uit; X-Ray vereist de permissies
undefined
en
undefined
(beheerd beleid
undefined
); en sampling kan problemen verbergen, tenzij je de regels aanpast voor laagfrequente maar kritieke stromen.
Praktijkprobleem: Use-Case Scenario
Scenario: Acme Retail beheert een serverless afrekenservice op AWS met behulp van API Gateway -> Lambda -> DynamoDB. Het team gebruikt gecentraliseerde CloudWatch Logs en X-Ray, maar mist doorvoermetrics per minuut per apparaat en heeft betrouwbare alerts nodig voor pieken in API-latency, zonder ruis te genereren.
Uitdaging: Leg bijna-realtime tellingen van apparaten/berichten per minuut vast, garandeer end-to-end tracing voor trage verzoeken en creëer een alarm met weinig ruis dat een geautomatiseerde herstel-Lambda triggert en de on-call-dienst op de hoogte stelt.
Aanbevolen Aanpak:
- Instrumenteer de afreken-Lambda om een custom high-resolution metric uit te sturen met de
undefined
API met
undefined
,
undefined
,
undefined
,
undefined
en
undefined
; batch deze in-memory en flush elke 30s om API-throttling te vermijden. 2. Sluit ook EMF JSON in de Lambda-logs in voor rijkere dimensies (customerId, region) en vertrouw op CloudWatch Logs om extra metrics te extraheren via
undefined
en metric filters (
undefined
) voor het tellen van fouten. 3. Schakel X-Ray tracing in: stel de Lambda
undefined
in op
undefined
, activeer X-Ray op de API Gateway-stage en gebruik de X-Ray SDK om annotaties (niet-PII) en subsegmenten toe te voegen rond externe HTTP-aanroepen naar API’s van derden. 4. Maak een samengesteld CloudWatch Alarm dat een hoge latency-metric voor het 95e percentiel (metric math) combineert met een piek in
undefined
; stel
undefined
,
undefined
in, met als
undefined
een SNS-topic dat een on-call-endpoint triggert plus een EventBridge-regel die een herstel-Lambda aanroept (rol met de minste privileges).
Rationale: Het uitsturen van high-resolution metrics en EMF geeft zowel onmiddellijke tellingen per minuut als een rijkere dimensionaliteit; X-Ray biedt inzicht in de hoofdoorzaak van latency tot op het niveau van downstream-aanroepen; samengestelde alarmen verminderen ruis door gecorreleerde voorwaarden te vereisen alvorens te alarmeren en maken automatisering mogelijk via EventBridge.
← Beveiliging · Alle domeinen · Opslag →
Oefen deze vragen → · Getimede oefening op ExamRoll.io →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
Slaag voor je examen →