CloudWatch Logs

Monitoring en troubleshooting van AWS

John Q. Martin

Principal Consultant

Kernbegrippen: logevents, streams en groepen

  Een logevent als één record met timestamp, message en ingestion time

  Een logstream als een reeks logevents uit één bron

  Een loggroep als verzameling gerelateerde logstreams met gedeelde retentie- en toegangsinstellingen

 

  • /aws/lambda/function-name
  • /ecs/cluster-name/service-name
  • /var/log/application-name
Monitoring en troubleshooting van AWS

CloudWatch Logs-architectuur

CloudWatch Logs-architectuur van applicatie/agent naar loggroepen en -streams, daarna query, export en abonnementen

Monitoring en troubleshooting van AWS

CloudWatch-logs vs. traditionele logging

Gecentraliseerde logging met CloudWatch vergeleken met traditionele per-server SSH en grep-logging

Monitoring en troubleshooting van AWS

Unified agent-setup: EC2

 

Vier stappen voor CloudWatch unified agent-setup op EC2: van IAM-rol tot installeren, configureren en starten

{
  "logs": {
    "logs_collected": {
      "files": {
        "collect_list": [
          {
            "file_path": "/var/log/application.log",
            "log_group_name": "/aws/ec2/application",
            "log_stream_name": "{instance_id}",
            "timezone": "UTC"
          }
        ]
      }
    }}}
Monitoring en troubleshooting van AWS

Logging voor Lambda en ECS

 

Lambda: geen agent nodig

  • Logt automatisch naar /aws/lambda/function-name
  • Legt aanroepen, duur, stdout/stderr, fouten vast
  • Gebruik gestructureerde JSON voor makkelijker query'en

 

{
  "logDriver": "awslogs",
  "options": {
    "awslogs-group": "/ecs/my-application",
    "awslogs-region": "us-east-1",
    "awslogs-stream-prefix": "ecs",
    "awslogs-create-group": "true"
  }
}
Monitoring en troubleshooting van AWS

Introductie tot metric filters

 

Wat zijn metric filters?

  • Scannen logevents op patronen → publiceren CloudWatch-metrics
  • Brug tussen logs en metrics
  • Aangemaakt op een loggroep

 

Use-cases

  • Aantal fouten tellen
  • Responstijden uit logs volgen
  • Bedrijfsevents monitoren (bestellingen, aanmeldingen)
  • Alarmen voeden vanuit logpatronen
Monitoring en troubleshooting van AWS

Syntaxis van filterpatronen

 

Drie formats voor metric filter-patronen: eenvoudige tekst, door spaties gescheiden velden en JSON met dollar-dotnotatie

Monitoring en troubleshooting van AWS

Aanbevolen praktijken voor metric filters

 

Aanbevolen praktijken voor metric filters: test patronen, standaardwaarde nul, groepeer namespaces en houd patronen simpel

Monitoring en troubleshooting van AWS

Introductie tot CloudWatch Logs Insights

 

Wat is Log Insights?

  • Interactieve queryservice binnen CloudWatch Logs
  • Query één of meerdere loggroepen tegelijk
  • Resultaten in seconden, geen infrastructuurbeheer

 

Drie ondersteunde querytalen

  • CloudWatch Logs Insights QL
  • OpenSearch PPL (Piped Processing Language)
  • OpenSearch SQL
Monitoring en troubleshooting van AWS

Samenvatting van de video

 

  • CloudWatch Logs: gecentraliseerde logging met logevents → streams → groepen
  • EC2: Unified Agent met JSON-config
  • Lambda: automatisch, geen agent nodig, gebruik gestructureerde JSON-logging
  • ECS: awslogs-logdriver in taakdefinitie
  • Metric filters: extraheer CloudWatch-metrics uit logpatronen
  • Log Insights: interactieve queryservice — we beheersen de queries in video 4
Monitoring en troubleshooting van AWS

Laten we oefenen!

Monitoring en troubleshooting van AWS

Preparing Video For Download...