یک سیستم 𝐦𝐞𝐭𝐫𝐢𝐜𝐬 𝐦𝐨𝐧𝐢𝐭𝐨𝐫𝐢𝐧𝐠و alerting طراحیشده نقش کلیدی در ارائه شفافیت واضح در مورد سلامت زیرساخت برای اطمینان از بالا بودن سطوح دسترسپذیری (availability) و قابلیت اطمینان دارد. نمودار زیر نحوه کار آن را در سطح بالا توضیح میدهد.
منبع متریکها (Metrics source): این میتواند سرورهای اپلیکیشن، پایگاه دادههای SQL، صفهای پیام و غیره باشد.
جمعکننده متریکها (Metrics collector): این سیستم دادههای متریک را جمعآوری کرده و آنها را در پایگاه داده سری زمانی مینویسد.
پایگاه داده سری زمانی (Time-series database): این پایگاه داده، دادههای متریک را به صورت سری زمانی ذخیره میکند. معمولاً یک رابط کوئری سفارشی برای تحلیل و خلاصهسازی حجم زیادی از دادههای سری زمانی ارائه میدهد. شاخصهایی (indexes) را در مورد برچسبها (labels) حفظ میکند تا جستجوی سریع دادههای سری زمانی بر اساس برچسبها را تسهیل کند.
کافکا: کافکا به عنوان یک پلتفرم ارسال پیام توزیع شده با قابلیت اطمینان و مقیاس پذیری بالا استفاده می شود. آن سرویس های جمع آوری داده و پردازش داده را از یکدیگر جدا می کند.
مصرفکنندگان (Consumers): مصرفکنندگان یا سرویسهای پردازش جریانی مانند Apache Storm، Flink و Spark، داده ها را پردازش می کنند و به پایگاه داده سری زمانی ارسال می کنند.
سرویس کوئری (Query service): این سرویس، کوئریهای سادهای ایجاد میکند و بازیابی داده از پایگاه داده سری زمانی را فراهم می کند. این باید یک لایه باریکی باشد اگر یک پایگاه داده سریزمانی خوب انتخاب کنیم. همچنین می تواند به طور کامل با رابط کوئری خود پایگاه داده سری زمانی جایگزین شود.
سیستم هشدار (Alerting system): این اعلان های هشدار را به مقاصد هشدار مختلف ارسال می کند.
سیستم مصورسازی (Visualization system): این متریک ها را به صورت انواع نمودارها/چارت ها نشان می دهد.