چه چیزی را پایش کنیم

به‌طور کلی، در راه‌اندازی تولید، باید سازوکارهای پایش را در استقرار Apigee Edge برای Private Cloud فعال کنید. این تکنیک‌های نظارت به سرپرستان (یا اپراتورهای) شبکه درباره خطا یا خرابی هشدار می‌دهند. هر خطای تولیدشده به‌عنوان هشدار در Apigee Edge گزارش می‌شود. برای اطلاعات بیشتر درباره هشدارها، به روال‌های مطلوب نظارت مراجعه کنید.

مؤلفه‌های Apigee عمدتاً به دو دسته تقسیم می‌شوند:

  • سرویس‌های سرور Java مختص Apigee: این سرویس‌ها شامل «سرور مدیریت»، «پردازشگر پیام»، «سرور Qpid»، و «سرور Postgres» می‌شود.
  • سرویس‌های شخص ثالث: این سرویس‌ها شامل Nginx Router،‏ Apache Cassandra،‏ Apache ZooKeeper،‏ OpenLDAP، پایگاه داده PostgreSQL، و Qpid می‌شود.

در استقرار درون‌محل Apigee Edge، جدول زیر نگاهی سریع به پارامترهایی که می‌توانید نظارت کنید ارائه می‌دهد:

مؤلفه بررسی‌های سیستم آمار سطح پردازش بررسی‌های سطح میانای برنامه‌سازی کاربردی بررسی‌های جریان پیام مختص مؤلفه

سرویس‌های جاوا مختص Apigee

سرور مدیریت

پردازشگر پیام

سرور Qpid

سرور Postgres

سرویس‌های طرف سوم

Apache Cassandra

Apache ZooKeeper

OpenLDAP

پایگاه داده PostgreSQL

Qpid

Nginx Router

به‌طور کلی، پس‌از نصب Apigee Edge، می‌توانید کارهای پایش زیر را برای پیگیری عملکرد نصب Apigee Edge برای Private Cloud انجام دهید.

بررسی‌های وضعیت سیستم

بسیار مهم است که پارامترهای سلامت سیستم مانند استفاده از CPU، استفاده از حافظه، و اتصال درگاه در سطح بالاتری اندازه‌گیری شود. می‌توانید پارامترهای زیر را برای دریافت اصول اولیه سلامت سیستم نظارت کنید.

  • استفاده از CPU: آمار پایه (کاربر/سیستم/انتظار ورودی-خروجی/بیکار) را درباره استفاده از CPU مشخص می‌کند. برای مثال، کل واحد پردازش مرکزی استفاده‌شده توسط سیستم.
  • حافظه آزاد/استفاده‌شده: میزان استفاده از حافظه سیستم را برحسب بایت مشخص می‌کند. برای مثال، حافظه فیزیکی استفاده‌شده توسط سیستم.
  • استفاده از فضای دیسک: اطلاعات سیستم فایل را براساس استفاده فعلی از دیسک مشخص می‌کند. برای مثال، فضای دیسک سخت که توسط سیستم استفاده می‌شود.
  • میانگین بار: تعداد فرایندهای منتظر اجرا را مشخص می‌کند.
  • آمار شبکه: بسته‌ها و/یا بایت‌های شبکه ارسال و دریافت‌شده، به‌همراه خطاهای ارسال درباره مؤلفه‌ای مشخص.

بررسی‌های فرایند/درخواست

در سطح فرایند، می‌توانید اطلاعات مهمی درباره همه فرایندهایی که درحال اجرا هستند مشاهده کنید. برای مثال، این اطلاعات شامل آمار استفاده از حافظه و CPU است که یک فرایند یا برنامه از آن استفاده می‌کند. برای فرایندهایی مانند Qpid،‏ Postgres Postmaster،‏ Java و غیره، می‌توانید موارد زیر را نظارت کنید:

  • شناسایی فرایند: شناسایی فرایند Apigee خاص. برای مثال، می‌توانید وجود فرایند Java سرور Apigee را پایش کنید.
  • آمار رشته: الگوهای رشته‌ای زیربنایی را که فرایند استفاده می‌کند مشاهده کنید. برای مثال، می‌توانید اوج تعداد رشته‌ها و تعداد رشته‌ها را برای همه فرایندها پایش کنید.
  • استفاده از حافظه: استفاده از حافظه را برای همه فرایندهای Apigee مشاهده کنید. برای مثال، می‌توانید پارامترهایی مثل استفاده از حافظه توده‌ای، استفاده از حافظه غیرتوده‌ای را که توسط یک فرایند استفاده می‌شود پایش کنید.

بررسی‌های سطح میانای برنامه‌سازی کاربردی

در سطح API، می‌توانید نظارت کنید که آیا سروری برای فراخوانی‌های API پرکاربرد که توسط Apigee پروکسی شده‌اند، فعال و درحال اجرا است یا نه. برای مثال، می‌توانید با فراخوانی فرمان curl زیر، بررسی API را در «سرور مدیریت»، «رهیاب»، و «پردازشگر پیام» انجام دهید:

curl http://host:port/v1/servers/self/up

که host نشانی IP مؤلفه Apigee Edge است. شماره port مختص هر مؤلفه Edge است. برای مثال:

سرور مدیریت: ۸۰۸۰

  • رهیاب: ۸۰۸۱
  • پردازشگر پیام: ۸۰۸۲
  • و غیره.

برای اطلاعات درباره اجرای این فرمان برای هر مؤلفه، بخش‌های جداگانه زیر را ببینید

این فراخوانی «درست» و «نادرست» را برمی‌گرداند. برای دریافت بهترین نتایج، می‌توانید فراخوانی‌های میانای برنامه‌سازی کاربردی را مستقیماً در پس‌بک (که نرم‌افزار Apigee با آن تعامل دارد) صادر کنید تا به‌سرعت مشخص شود که آیا خطایی در محیط نرم‌افزار Apigee یا در پس‌بک وجود دارد یا نه.

بررسی جریان پیام

می‌توانید داده‌های مربوط به الگو/آمار جریان پیام را از «مسیریاب‌ها» و «پردازشگرهای پیام» جمع‌آوری کنید. این به شما امکان می‌دهد موارد زیر را پایش کنید:

  • تعداد مشتریان فعال
  • تعداد پاسخ‌ها (۱۰ برابر، ۲۰ برابر، ۳۰ برابر، ۴۰ برابر، و ۵۰ برابر)
  • خطاهای اتصال

این کار به شما کمک می‌کند داشبوردهایی برای جریان پیام میانای برنامه‌سازی کاربردی ارائه دهید. برای اطلاعات بیشتر، نحوه پایش را ببینید.

بررسی سلامت رهیاب «پردازشگر پیام»

«مسیریاب» سازوکار بررسی سلامت را اجرا می‌کند تا تعیین کند کدام‌یک از «پردازشگرهای پیام» طبق انتظار کار می‌کنند. اگر «پردازشگر پیام» به‌عنوان غیرفعال یا کند شناسایی شود، «مسیریاب» می‌تواند به‌طور خودکار «پردازشگر پیام» را از چرخه خارج کند. اگر این اتفاق بیفتد، «رهیاب» پیام‌های «Mark Down» را در فایل گزارش «رهیاب» در /opt/apigee/var/log/edge-router/logs/system.log می‌نویسد.

می‌توانید فایل گزارش «رهیاب» را برای این پیام‌ها پایش کنید. برای مثال، اگر «رهیاب» یک «پردازشگر پیام» را از چرخه خارج کند، پیام را به‌صورت زیر در گزارش می‌نویسد:

2014-05-06 15:51:52,159 org: env: RPCClientClientProtocolChildGroup-RPC-0 INFO CLUSTER - ServerState.setState() : State of 2a8a0e0c-3619-416f-b037-8a42e7ad4577 is now DISCONNECTED. handle = MP_IP at 1399409512159
2014-04-17 12:54:48,512 org: env: nioEventLoopGroup-2-2 INFO HEARTBEAT - HBTracker.gotResponse() : No HeartBeat detected from /MP_IP:PORT Mark Down

که MP_IP:PORT نشانی IP و شماره درگاه «پردازشگر پیام» است.

اگر بعداً «رهیاب» بررسی سلامت انجام دهد و تشخیص دهد که «پردازشگر پیام» به‌درستی کار می‌کند، «رهیاب» به‌طور خودکار «پردازشگر پیام» را به چرخه برمی‌گرداند. «مسیریاب» همچنین پیام «علامت‌گذاری» را در قالب زیر در گزارش می‌نویسد:

2014-05-06 16:07:29,054 org: env: RPCClientClientProtocolChildGroup-RPC-0 INFO CLUSTER - ServerState.setState() : State of 2a8a0e0c-3619-416f-b037-8a42e7ad4577 is now CONNECTED. handle = IP at 1399410449054
2014-04-17 12:55:06,064 org: env: nioEventLoopGroup-4-1 INFO HEARTBEAT - HBTracker.updateHB() : HeartBeat detected from IP:PORT Mark Up