note / systems-explain-themselves

Systems should explain themselves

Sistem yang tenang saat sehat seharusnya tetap mampu menjelaskan dirinya ketika sesuatu gagal.

kind
technical
written
themes
observability · trust · operations

Aku suka sistem yang tidak banyak meminta perhatian ketika semuanya sehat.

Service hidup. Certificate terbarui. Queue bergerak. Deployment selesai. Tidak ada alasan manusia harus terus melihat dashboard hanya untuk memastikan dunia belum runtuh.

Tetapi ketenangan itu baru berguna kalau sistem dapat berubah menjadi jelas saat sesuatu bermasalah.

Invisible ketika sehat, legible ketika gagal

Buatku observability bukan soal memasang dashboard sebanyak mungkin.

Yang aku cari adalah kemampuan menjawab pertanyaan sederhana:

  • apa yang terjadi?
  • sejak kapan?
  • bagian mana yang terdampak?
  • apa yang berubah sebelumnya?
  • bukti apa yang mendukung dugaan ini?
  • tindakan berikutnya apa?

Log tanpa konteks hanya memindahkan pekerjaan ke manusia.

Status healthy tanpa definisi health yang berarti juga bisa menipu.

Abstraction yang menyembunyikan detail saat normal itu menyenangkan. Abstraction yang tetap menyembunyikan detail ketika gagal membuatku tidak percaya.

Aku ingin sistem terasa seperti rekan kerja yang pendiam: tidak mengganggu saat tidak perlu, tetapi ketika ditanya bisa menjelaskan apa yang ia tahu.