Apa Perbedaan Antara Observabilitas dan Pemantauan?


Apa perbedaan antara observabilitas dan pemantauan?

Dalam DevOps, observabilitas dan pemantauan merupakan dua proses berbasis data yang berbeda. Anda menggunakannya agar sukses memelihara dan mengelola kondisi serta performa arsitektur layanan mikro terdistribusi dan infrastrukturnya. Sistem terdistribusi bekerja dengan cara bertukar data antara puluhan hingga ratusan atau ribuan komponen yang berbeda. 

Pemantauan adalah proses mengumpulkan data dan menghasilkan laporan tentang berbagai metrik yang menentukan kondisi sistem. Observabilitas adalah sebuah pendekatan yang lebih investigatif. Observabilitas mengamati interaksi komponen sistem terdistribusi dan data yang dikumpulkan dengan pemantauan untuk menemukan akar penyebab masalah. Pendekatan ini mencakup aktivitas, seperti analisis jalur jejak, sebuah proses yang mengikuti jalur permintaan melalui sistem untuk mengidentifikasi kegagalan integrasi. Pemantauan mengumpulkan data pada masing-masing komponen, dan observabilitas melihat sistem terdistribusi secara keseluruhan.

Baca tentang DevOps

Cara kerja: observabilitas vs. pemantauan

Observabilitas dan pemantauan merupakan proses penting dalam menjalankan program DevOps yang efektif.

Pemantauan

Memantau sistem komputasi adalah praktik yang sama tuanya dengan menjalankan sistem komputasi itu sendiri. Proses pemantauan mengumpulkan data tentang sistem untuk memeriksa apakah sistem beroperasi seperti yang diharapkan. Termasuk laporan dan peringatan tentang kesalahan, kerusakan, atau nilai data anomali. 

Misalnya, alat pemantauan dapat mengumpulkan data untuk mengukur waktu yang dibutuhkan untuk melakukan deployment pada rilis aplikasi. Jika waktu yang dibutuhkan berada di luar batas periode yang diharapkan, alat pemantauan dapat memperingatkan pengguna, mengindikasikan bahwa sepertinya ada sesuatu yang tidak beres. 

Pemantauan DevOps mencakup siklus hidup pengembangan perangkat lunak (SDLC) penuh. Pemantauan performa aplikasi (APM) adalah bagian khusus dari pemantauan DevOps yang berfokus pada aplikasi yang berjalan dalam produksi. Hal ini memprioritaskan metrik yang berlaku untuk pengalaman pengguna.

Baca tentang siklus hidup pengembangan perangkat lunak

Baca tentang pemantauan performa aplikasi

Observabilitas

Observabilitas menghadirkan cakupan dan visibilitas yang lebih luas pada alat pemantauan tradisional, yang menggabungkan data situasional dan riwayat serta interaksi sistem. Observabilitas memungkinkan investigasi terhadap akar penyebab peringatan pemantauan, di samping kemampuan untuk menyelidiki masalah yang muncul karena interaksi multikomponen.

Anda dapat menggunakan alat observabilitas untuk melakukan debug sistem berbasis arsitektur aplikasi terdistribusi itu sendiri. Anda juga dapat menggunakannya untuk mengamati kondisi waktu nyata sistem secara keseluruhan dan interaksi antara komponen sistem. Anda dapat menggunakan perangkat lunak observabilitas untuk memetakan seluruh sistem yang saling berhubungan, dependensinya, dan interaksi waktu nyata.

Apa persamaan antara observabilitas dan pemantauan?

Baik observabilitas maupun pemantauan pada awalnya berasal dari bidang teori kontrol, sebuah bidang rekayasa sistem dan matematika. Keduanya digunakan secara luas di seluruh komputasi dan lingkungan fisik yang dipadukan dengan komputasi untuk pemeliharaan kondisi dan performa sistem. Dalam DevOPs, istilah ini sering digunakan secara bergantian karena keduanya berhubungan dengan data telemetri, seperti metrik, peristiwa, log, dan jejak.

Metrik

Metrik adalah pengukuran data sistem. Misalnya, metrik bisa berupa throughput jaringan atau jumlah kesalahan aplikasi dalam seminggu. Laporan pemantauan tentang metrik dan observabilitas mencari cara untuk meningkatkan nilainya.

Acara

Peristiwa adalah tindakan diskrit yang terjadi dalam suatu sistem pada setiap titik waktu. Contohnya adalah pengguna yang mengubah kata sandi atau peringatan yang mengindikasikan banyaknya percobaan kata sandi. Peristiwa memicu pemantauan dan mendukung observabilitas dalam menyelidiki insiden.

Log

Log adalah file yang dihasilkan perangkat lunak yang berisi informasi tentang operasi, aktivitas, dan pola penggunaan sistem. File log menyertakan catatan historis dari semua proses, peristiwa, dan pesan bersama dengan data deskriptif tambahan, seperti stempel waktu, untuk mengontekstualisasikan informasi ini. Pemantauan menghasilkan log yang digunakan observabilitas untuk analisis sistem lebih lanjut.

Baca tentang file log

Jejak

Jejak adalah jalur lengkap dari satu operasi di berbagai sistem yang saling terkait. Untuk pelacakan terdistribusi penuh, sinyal harus dipancarkan dari setiap transaksi dalam arsitektur layanan mikro untuk pelacakan. Pemantauan mengaktifkan pelacakan, yang merupakan fungsi penting observabilitas.

Observabilitas vs. pemantauan: perbedaan utama

Pemantauan adalah komponen inti penting dari observabilitas. Pemantauan komprehensif menciptakan metrik deskriptif, peristiwa, log, dan jejak yang mengukur hal-hal penting dengan cara yang mudah diidentifikasi dan diambil. Catatan riwayat disimpan bersama pengukuran saat ini untuk membangun gambaran luas tentang sistem. Observabilitas kemudian dapat menggunakan apa yang dihasilkan oleh pemantauan untuk menyelidiki insiden secara lebih mendalam.

Pemantauan terkait dengan kapan dan apa kesalahan yang terjadi pada sistem, sedangkan observabilitas berkaitan dengan mengapa dan bagaimana kesalahan tersebut terjadi. Ada banyak sinyal yang harus dipetakan dan dipantau untuk mendapatkan gambaran menyeluruh mengenai kondisi internal dan kondisi sistem secara keseluruhan. Anda membutuhkan semua data ini untuk dapat melakukan penyelidikan yang efektif. Agar observabilitas bermanfaat dan efektif, pemantauan harus komprehensif dan deskriptif.

Anomali

Dengan sistem pemantauan, Anda dapat menemukan anomali atau perilaku yang tidak biasa dalam kondisi dan performa sistem. Dengan observabilitas, Anda dapat menyelidiki lebih lanjut setiap anomali, bahkan jika hal tersebut terjadi karena interaksi antara ratusan komponen layanan.

Sebab-akibat

Pemantauan berfokus pada pengukuran suatu atau beberapa nilai untuk melihat apakah ada efek pada suatu sistem. Tujuan observabilitas adalah untuk memahami penyebab efek tersebut. Misalnya, ketika kode baru dirilis, pemantauan melacak metrik sistem untuk melihat apakah waktu muat aplikasi atau waktu pengambilan data terpengaruh oleh perubahan tersebut. Dalam kasus dampak, observabilitas menyelidiki alasan atau penyebabnya. Hal ini menjawab bagian mana dari perubahan kode yang menyebabkan efek dan menyarankan cara untuk memperbaikinya.

Interaksi sistem

Pemantauan biasanya mengukur kondisi sistem tertentu. Sistem ini mengumpulkan data tentang semua komponen sistem yang berbeda, tetapi data mungkin terisolasi, dan keterkaitannya sulit untuk dipahami. Dengan observabilitas, Anda mendapatkan pandangan menyeluruh dari semua sistem yang saling terkait untuk mendapatkan pemahaman tentang tempat dan cara masalah terjadi.

Kapan perlu menggunakan: observabilitas vs. pemantauan

Penangkapan kesalahan secara retrospektif, seperti mengetahui pemadaman listrik dari pengguna atau menemukan aplikasi yang berjalan di sistem target yang salah, dapat mengakibatkan hilangnya waktu, uang, reputasi, dan sumber daya developer. Pemantauan adalah hal yang harus dimiliki untuk menangkap kesalahan secara proaktif. Alat pemantauan memunculkan peringatan untuk semua jenis ketidaksesuaian yang dapat Anda identifikasi dan perbaiki sebelum menyebabkan konsekuensi jangka panjang.

Sistem yang dapat diamati menambah kemampuan pemantauan yang ada. Hal ini sangat penting dalam menjalankan arsitektur aplikasi layanan mikro, terutama ketika aplikasi tersebut dilakukan deployment ke infrastruktur cloud terdistribusi. Dengan pemantauan saja, hampir tidak mungkin untuk mengidentifikasi dan mengisolasi aplikasi atau layanan tempat terjadinya kesalahan. Pengambilan dan pemantauan data yang tepat, ditambah dengan observabilitas, memungkinkan untuk melacak kesalahan melalui sistem yang kompleks.

Ringkasan perbedaan: pemantauan vs. observabilitas

 

Pemantauan

Observabilitas

Apa itu?

Mengukur dan melaporkan metrik tertentu dalam sistem untuk memastikan kondisi sistem.

Mengumpulkan metrik, peristiwa, log, dan jejak untuk mengaktifkan penyelidikan mendalam tentang masalah kondisi di seluruh sistem terdistribusi dengan arsitektur layanan mikro.

Fokus utama

Kumpulkan data untuk mengidentifikasi efek sistem anomali.

Selidiki akar penyebab efek sistem anomali.

Sistem yang terlibat

Biasanya berkaitan dengan sistem mandiri.

Biasanya berkaitan dengan beberapa sistem yang berbeda.

Keterlacakan

Terbatas pada edge sistem.

Tersedia di mana sinyal dipancarkan di seluruh arsitektur sistem yang berbeda.

Temuan kesalahan sistem

Kapan dan apa.

Mengapa dan bagaimana.

Bagaimana AWS dapat membantu memenuhi kebutuhan observabilitas dan pemantauan Anda?

Operasi AWS Cloud menyediakan model dan alat untuk beroperasi di cloud dengan aman dan efisien. Anda dapat mengubah organisasi Anda, memodernisasi, dan memigrasikan aplikasi Anda, serta mempercepat inovasi dengan Amazon Web Services (AWS). 

Dengan pemantauan dan observabilitas dalam operasi cloud, Anda dapat mengumpulkan, menghubungkan, menggabungkan, dan menganalisis telemetri. Hal ini berlaku di seluruh jaringan, infrastruktur, dan aplikasi Anda di lingkungan cloud, hibrida, atau on-premise. Anda dapat memperoleh wawasan tentang perilaku, performa, dan kondisi sistem Anda. Dengan wawasan ini, Anda dapat mendeteksi, menyelidiki, dan memperbaiki masalah dengan lebih cepat. Ketika digabungkan dengan kecerdasan buatan (AI) dan machine learning (ML), Anda dapat menggunakan wawasan ini untuk bereaksi, memprediksi, dan mencegah masalah secara proaktif.

Misalnya, Anda dapat menggunakan:

  • AWS X-Ray untuk menganalisis dan melakukan debug produksi dan aplikasi terdistribusi, melacak permintaan pengguna, mengidentifikasi hambatan, dan memantau performa
  • Amazon CloudWatch untuk mengakses dan menganalisis data sumber daya dan aplikasi serta output eksternal menggunakan alat visualisasi yang canggih di AWS, on-premise, dan di cloud lainnya
  • Amazon Managed Grafana untuk mengelola Grafana (alat pemantauan populer) secara penuh untuk melakukan kueri, visualisasi, dan peringatan pada metrik, log, dan jejak di seluruh data operasional
  • Amazon Managed Service for Prometheus untuk mengelola Prometheus sepenuhnya, alat pemantauan kontainer untuk memelihara dan mengueri metrik deret waktu dari klaster kontainer Kubernetes yang Anda kelola sendiri

Mulai pemantauan dan observabilitas di AWS dengan membuat akun sekarang juga.