Cloud platforms · AWS and Azure

Observability stack: logs, metrics, traces, SLOs and alerting

One way to see every workload: OpenTelemetry instrumentation, central storage per signal, SLO-based alerting that wakes people only for user impact, and runbooks linked from every alert.

A reference architecture from EITSAA, not a named client system. Service limits, prices and product features change, so confirm current details before you commit to a design.

  • ACSC Essential Eight
  • SA ISMF logging expectations
  • Australian regions

Architecture

Architecture diagram. Tinted boundaries show regions, accounts, networks and trust zones. Numbered arrows match the flow below.
Observability stack: logs, metrics, traces, SLOs and alerting architectureApplications to OTel Collector: OTLP. OTel Collector to Metrics: metrics. OTel Collector to Logs: logs. OTel Collector to Traces: traces. AWS and Azure services to Logs: native logs. Metrics to SLO and alert rules: SLI. SLO and alert rules to On-call: page. SLO and alert rules to Runbooks and incident record: linkWorkload accountsResponseApplicationsOpenTelemetry SDKAWS and AzureservicesCloudWatch, Azure MonitorOTel CollectorSampling, scrubbing, routingMetricsCloudWatch, Prometheus, ManagedGrafanaLogsCloudWatch Logs, Log AnalyticsTracesX-Ray or Application InsightsSLO and alert rulesBurn rate, composite alarmsOn-callPagerDuty, Opsgenie, TeamsRunbooks and incidentrecordLinked from alerts1OTLP2metrics2logs2traces3native logs4SLI5page6link
  • Compute and containers
  • SaaS and business systems
  • Databases and data
  • Monitoring, audit and analytics
  • Network and edge
  • Request or data flow
  • Asynchronous or optional
  • Boundary: region, account, network or trust zone

Request and data flow

  1. Applications emit traces, metrics and structured logs through OpenTelemetry SDKs with a consistent service name, environment and version.

  2. The collector samples traces, scrubs personal information and secrets, and routes each signal to the right store.

  3. Platform services also send native logs and metrics, such as ALB access logs, Azure diagnostic settings and database slow-query logs.

  4. SLIs (availability, latency, error rate) feed SLO definitions, with alerts on burn rate across short and long windows.

  5. Only user-impacting alerts page the on-call engineer. Everything else becomes a ticket or a dashboard item.

  6. Each alert links to its runbook, dashboards and the recent deployment, and incidents are recorded for review.

Components and why they were chosen

ComponentWhat it doesWhy this choice
OpenTelemetry SDK and CollectorVendor-neutral instrumentation and a pipeline for filtering and routing.Avoids lock-in and centralises scrubbing.
Amazon CloudWatch / Azure MonitorNative metrics, logs, alarms and dashboards.Zero-setup coverage for managed services.
Amazon Managed Prometheus and Managed Grafana (or Azure Managed Grafana)Metrics storage and cross-account dashboards.Good for Kubernetes and for one view across clouds.
AWS X-Ray or Application InsightsDistributed tracing and service maps.Find latency sources across services.
CloudWatch Logs Insights, OpenSearch or Log Analytics (KQL)Query logs.Choose by existing skills and volume.
SLO tooling (CloudWatch Application Signals, Grafana SLO, Nobl9)Define error budgets and burn alerts.Alerts tied to user outcomes cut noise.
On-call platformSchedules, escalation and acknowledgement.Humans need a reliable path.
Runbooks (Git, Confluence or wiki)Step-by-step diagnostics and recovery.Reduce time to restore and dependence on specific people.

Design decisions and trade-offs

Instrumentation

OpenTelemetry first.

Why. Portable, consistent across languages.

Trade-off. Some auto-instrumentation is less polished than vendor agents.

Alerting

SLO burn-rate alerts rather than CPU and memory thresholds.

Why. Pages should mean users are hurt.

Trade-off. Needs agreed SLOs, which is a conversation worth having.

Log retention

Hot for 30 days, archive to S3 or Storage for the policy period.

Why. Controls cost while meeting audit needs.

Trade-off. Archived logs are slower to query.

Placement

Central observability account with cross-account sharing.

Why. One pane of glass and protected data.

Trade-off. Cross-account permissions to maintain.

Well-architected pillars

Security

Scrub personal information before storage, restrict log access, and treat logs as sensitive data.

Reliability

Telemetry paths are buffered, with an independent heartbeat that alerts if telemetry stops.

Performance

Head and tail sampling keeps traces affordable and fast to query.

Cost optimisation

Ingestion volume is the main driver. Control cardinality and verbosity.

Operational excellence

Alert review monthly: delete or fix every alert that was not actionable.

Sustainability

Collect what you will use, retain what you must.

Network, identity and data

Networking

Collectors send over private endpoints or the cloud's backbone. Dashboards are reachable only via SSO. Cross-account sharing uses IAM roles, not network exposure.

Identity and least privilege

Read access to production telemetry is a role with SSO and MFA, and access to logs with personal data is further restricted. Alert tooling uses scoped API keys in a secret manager.

Data and encryption

Never log credentials, tokens or full personal records. Use field-level redaction in the collector, and classify log groups with matching retention.

Security and compliance mapping

ControlHow this design addresses it
Event loggingCentralised, protected and time-synchronised logs support ISM event logging guidance and incident response.
Restrict administrative privilegesLog deletion and retention changes restricted and alerted. Essential Eight.
Incident responseAlerts, runbooks and post-incident review support ISMF incident management expectations.

Mappings show how the design supports each control. They are not certifications, and EITSAA does not claim IRAP assessment or compliance for any reference architecture.

Failure modes, targets and scaling

  • Target RTOObservability is restored before other systems in a disaster, in under an hour
  • Target RPOMetrics minutes; logs per retention policy
  • Scaling and limitsMetric cardinality and log volume are the limits. Budget and review them.
Failure modeMitigation
Telemetry pipeline stops silentlyDead-man's switch alert if no data arrives.
Alert fatigueSLO-based paging and monthly alert review.
Cost explosion from log volumeIngestion alarms, sampling and log level policy.
Secrets or personal data in logsCollector scrubbing rules and scheduled log scanning.

Observability and runbooks

  • Meta-monitoring: collector health, ingestion lag and dropped spans.
  • Alert quality metrics: pages per week, percent actionable, time to acknowledge.

Cost drivers and levers

Log ingestion and retention, custom metric count, trace volume, dashboards and queries.

  • Reduce debug logging in production.
  • Tail-sample traces keeping errors and slow requests.
  • Drop high-cardinality labels.
  • Archive logs to object storage.

Implementation and fit

Phased approach

  1. Standard logging format and correlation IDs.
  2. Collect golden signals for each service and define SLOs.
  3. Replace threshold alerts with burn-rate alerts and add runbooks.
  4. Add tracing and cross-account dashboards.

Anti-patterns to avoid

  • Alerting on every metric.
  • Logging whole request bodies.
  • Dashboards nobody owns.
  • No runbook linked to the alert.

When to use it

  • Any production workload, scaled to its criticality.
  • Managed service contracts that need evidence of service levels.

When not to

  • Building a custom monitoring platform when managed services meet the need.

More in cloud platforms

Related insights

Discuss this architecture

Tell us your systems, constraints and timeline. We reply within one business day, and the initial conversation is free.