Monitorizarea Evenimentelor în Timp Real din Motorul Docker cu docker events în Docker

Ghid complet pentru fluxul de evenimente docker events: ascultarea în timp real a acțiunilor generate de daemon (porniri, opriri, eșecuri OOMKilled, atașări de volume și rețele) pentru audit și automatizare.

Sintaxă comandă
docker events --filter type=container --filter event=die

Comanda docker events deschide o conexiune de streaming în timp real către daemonul Docker, capturând fiecare activitate și schimbare de stare din sistem: crearea, pornirea, oprirea forțată, erorile de tip OOM (Out Of Memory), descărcarea de imagini sau atașarea de volume. Este mecanismul pe care se bazează soluțiile profesionale de monitorizare (Datadog, Prometheus node-exporter, Portainer) pentru a reacționa instantaneu la incidente.

Filtrarea evenimentelor critice în timp real
# 1. Ascultă doar evenimentele de oprire/eșec (die) ale containerelor:
docker events --filter type=container --filter event=die

# Exemplu de notificare primită la oprirea unui container:
# 2026-10-24T18:30:15.123456789+03:00 container die 3c1a2f (exitCode=137, name=worker-queue)
# Notă: exitCode=137 indică faptul că procesul a primit SIGKILL (adesea cauzat de epuizarea memoriei RAM - OOMKilled)!

# 2. Filtrarea evenimentelor pe o anumită durată din trecut (istoric):
docker events --since '1h' --filter type=container

# 3. Formatare modernă ca JSON pentru procesare facilă în scripturi:
docker events --format '{{json .}}'

Tipuri comune de evenimente monitorizate:

  • container: create, start, stop, kill, die, oom, restart.
  • image: pull, push, tag, delete.
  • volume: create, mount, unmount, destroy.
  • network: connect, disconnect.