theawesomenayakSiben Nayak
من طراح ، توسعه دهنده ، سرپرست تیم و مربی مستقر در هند هستم. من عاشق ساختن چیزهای جدید ، رفع موارد خراب هستم.
در مقاله قبلی ام ، در مورد اهمیت سیاهههای مربوط صحبت کردم و تفاوت بین ورود به سیستم ساختاری و غیر ساختاری. سیاهههای مربوط به راحتی در برنامه شما ادغام می شوند و توانایی نمایش هر نوع داده را به صورت رشته ها فراهم می کنند.
معیارها ، نمایش عددی داده ها هستند. اینها غالباً برای شمارش یا اندازه گیری مقداری مورد استفاده قرار می گیرند و در یک بازه زمانی جمع می شوند. معیارها به ما اطلاعاتی در مورد وضعیت تاریخی و فعلی یک سیستم می دهند. از آنجا که آنها فقط اعداد هستند ، می توان از آنها برای انجام تجزیه و تحلیل آماری و پیش بینی رفتارهای آینده سیستم نیز استفاده کرد. از معیارهای متغیر همچنین برای ایجاد هشدارها و آگاه سازی شما درباره مسائل مربوط به رفتار سیستم استفاده می شود.
گزارش ها در برابر معیارها
قالب
گزارش ها به صورت رشته ای نشان داده می شوند. اینها می توانند متون ساده ، بارهای JSON یا جفت مقدار کلید باشند (مانند آنچه در ورود به سیستم ساختاری بحث کردیم).
معیارها به عنوان اعداد نشان داده می شوند. آنها چیزی را اندازه گیری می کنند (مانند استفاده از پردازنده ، تعداد خطاها و غیره) و ماهیت عددی دارند.
وضوح
گزارش ها حاوی داده های با وضوح بالا هستند. این شامل اطلاعات کاملی در مورد یک رویداد است و می تواند برای ارتباط جریان (یا مسیری) که این رویداد از طریق سیستم طی کرده استفاده شود.
در صورت بروز خطا ، گزارش ها حاوی کل ردیابی پشته استثنا هستند ، که به ما امکان می دهد مسائل ناشی از سیستم های پایین دستی را نیز مشاهده و رفع اشکال کنیم. به طور خلاصه ، گزارش ها می توانند به شما بگویند که در یک زمان مشخص چه اتفاقی در سیستم افتاده است. این ممکن است شامل تعداد پارامترها (مانند درخواست ها ، خطاها و غیره) و اندازه گیری منابع (مانند CPU و استفاده از حافظه) باشد. به طور خلاصه ، معیارها می توانند شماری از مواردی را که در زمان مشخصی در سیستم رخ داده است به شما ارائه دهند.
هزینه
نگهداری سیاهههای مربوط گران است. سربار ذخیره سازی سیاهههای مربوط نیز با گذشت زمان افزایش می یابد و مستقیماً با افزایش ترافیک متناسب است.
معیارها دارای یک سربار ذخیره ثابت هستند. هزینه ذخیره و بازیابی معیارها با افزایش ترافیک خیلی زیاد نمی شود. با این حال ، به تعداد متغیرهایی که با هر معیار ساطع می کنیم بستگی دارد.
کاردینالیته
معیارها توسط دو بخش اصلی اطلاعات مشخص می شوند:
نام متریک مجموعه ای از جفتهای مقدار-کلید به نام برچسب ها یا برچسب ها
جایگزینی این مقادیر ، اصالت آن را برای متریک فراهم می کند. به عنوان مثال ، اگر ما در حال استفاده از پردازنده سیستمی با سه میزبان هستیم ، متریک دارای ارزش اصلی 3 است و می تواند سه مقدار زیر را داشته باشد:
(نام = pod.cpu.utilization ، میزبان = B)
(name = pod.cpu.utilization، host = C)
به همین ترتیب ، اگر برچسب دیگری را در متریک معرفی کنیم که منطقه AWS میزبان ها را تعیین کند (مثلاً us-west- 1 و us-west-2) ، اکنون معیاری با مقدار کاردینالیته 6 خواهیم داشت.
انواع معیارها
سیگنال های طلایی < / strong>
سیگنال های طلایی یک روش موثر برای نظارت بر وضعیت کلی سیستم و شناسایی مشکلات است.
معیارهای منابع
معیارهای منابع تقریباً همیشه به طور پیش فرض از ارائه دهنده زیرساخت (معیارهای AWS CloudWatch یا Kubernetes) در دسترس است و برای نظارت بر سلامت زیرساخت ها استفاده می شود.
معیارهای کسب و کار
داشبورد و هشدارها
از آنجا که معیارها در یک پایگاه داده سری زمانی ذخیره می شوند ، اجرای نمایش داده هایی برای اندازه گیری وضعیت سیستم کارآمدتر و قابل اطمینان تر است.
از این س quالات می توان برای ساخت داشبورد برای نمایش وضعیت تاریخی سیستم استفاده کرد.
با توجه به ماهیت عددی آنها ، ما همچنین می توانیم سeriesالات پیچیده ریاضی ایجاد کنیم (مانند X٪ خطاها در آخرین Y دقیقه) برای نظارت بر سلامت سیستم.
نتیجه گیری
در این مقاله ، تفاوت بین معیارها و گزارش ها را مشاهده کردیم و اینکه چگونه معیارها می توانند به ما در نظارت بر سلامت سیستم ما به طور موثرتری از معیارها همچنین می توان برای ایجاد داشبورد و هشدارها با استفاده از نرم افزارهای نظارتی مانند Wavefront و Grafana استفاده کرد. مفید است در حالی که هزینه های خود را نیز کنترل می کند. برای تشخیص دقیق و رفع اشکال ، لازم است که هم از معیارها و هم از log ها استفاده شود.
این قسمت دوم از سری ریزبینی مایکروسرویس است. اگر قبلاً آن را انجام نداده اید ، به قسط اول نگاهی بیندازید. من وقتی مقالات بعدی را پخش می کنم پیوندهایی اضافه می کنم. با ما همراه باشید!
همچنین در https://medium.com/better-programming/microservice-observability-metrics-bd9be270bc62