شما در حال مشاهده اسناد Apigee Edge هستید.
به مستندات Apigee X بروید . اطلاعات
بیشتر APIهایی که برای ایجاد و مدیریت هشدارهای ناهنجاری و جمعآوری معیارهای ناهنجاری استفاده میکنید، مشابه مواردی هستند که با هشدارهای ثابت استفاده میکنید. API های هشدار زیر برای هشدارهای ثابت و غیرعادی به یک شکل عمل می کنند:
- دریافت هشدار - یک تعریف هشدار ثابت یا غیرعادی دریافت کنید.
- دریافت سابقه هشدار - معیارهای سابقه هشدار را دریافت کنید.
- حذف یک هشدار - یک تعریف هشدار ثابت یا غیرعادی را حذف کنید.
- دریافت نمونه هشدار - اطلاعاتی درباره یک هشدار راه اندازی شده دریافت کنید.
- دریافت تعداد هشدار - تعداد کل هشدارها را دریافت کنید.
با این حال، برخی از API ها دارای ویژگی های اضافی هستند که برای پشتیبانی از هشدارهای ناهنجاری استفاده می شود، از جمله:
- دریافت هشدار - لیست همه هشدارها، از جمله هشدارهای ثابت و غیرعادی.
- ایجاد هشدار - یک هشدار ثابت یا غیرعادی ایجاد کنید.
- به روز رسانی یک هشدار - یک تعریف هشدار ثابت یا غیرعادی را به روز کنید.
تنظیم $ACCESS_TOKEN
همه تماسهای API نشان داده شده در زیر، اعتبار شما را در یک متغیر محیطی به نام $ACCESS_TOKEN
منتقل میکنند. همانطور که در دریافت نشانه دسترسی OAuth 2.0 توضیح داده شده است، $ACCESS_TOKEN
روی نشانه دسترسی OAuth 2.0 خود تنظیم کنید. برای اطلاعات در مورد گزینه های cURL استفاده شده در این مثال ها، به استفاده از cURL مراجعه کنید.
دریافت هشدار
به طور پیش فرض، Get alerts API اطلاعات مربوط به همه هشدارهای تعریف شده را برمی گرداند. این API اکنون پارامترهای پرس و جو را می گیرد تا به شما امکان می دهد نتایج را فیلتر کنید:
-
enabled
- اگرtrue
مشخص می کند که فقط هشدارهای فعال را برگرداند. مقدار پیش فرضfalse
است. -
alertType
- نوع هشدار برای بازگشت را مشخص می کند. مقادیر مجاز عبارتند ازruntime
، پیش فرض،cert
. -
alertSubType
- نوع فرعی هشدار را برای بازگشت مشخص می کند. مقدار پیشفرض تنظیم نشده است، به این معنی که همه زیرگروههای هشدار را برمیگرداند. برای برگرداندن هشدارهای ناهنجاری،anomaly
مشخص کنید.
به عنوان مثال، از فراخوانی API زیر استفاده کنید تا فقط هشدارهای فعال را برای سازمانی به نام myorg
بازگردانید:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ 'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&enabled=true'
تماس زیر فقط هشدارهای غیرعادی را، چه فعال و چه غیرفعال، برمی گرداند:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ 'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&alertType=runtime&alertSubType=anomaly'
ایجاد یا به روز رسانی هشدار ناهنجاری
از همان APIها برای ایجاد یا به روز رسانی یک هشدار ناهنجاری استفاده کنید که در حال حاضر برای یک هشدار ثابت انجام می دهید. بدنه فراخوانی API برای ایجاد یا بهروزرسانی یک هشدار ناهنجاری، همان چیزی است که برای یک هشدار ثابت استفاده میشود، با تغییرات زیر:
شما باید ویژگی های جدید زیر را اضافه کنید تا مشخص کنید که هشدار یک هشدار غیرعادی است:
"alertType": "runtime" "alertSubType": "anomaly"
مقادیر پیش فرض این ویژگی ها عبارتند از:
"alertType": "runtime" "alertSubType": "fixed"
در آرایه
conditions
:ویژگی
metrics
فقط مقادیر زیر را می گیرد:-
count
- یک هشدار در مورد تعداد خطاهای HTTP ایجاد کنید. -
totalLatency
- یک هشدار برای تأخیر ایجاد کنید.
-
- ویژگی
threshold
به جای عدد یک رشته می گیرد. مقادیر پشتیبانی شده عبارتند از:slight
،moderate
وsevere
. - ویژگیهای
durationSeconds
وcomparator
پشتیبانی نمیشوند.
در عنصر
dimensions
آرایهconditions
:- شما باید مقدار ویژگی
proxy
را رویALL
تنظیم کنید. - ویژگی
statusCode
فقط از مقادیر4xx, 503, 504, and 5xx
پشتیبانی می کند. - ویژگی های
developerApp
،collection
،faultCodeCategory
،faultCodeSubCategory
،faultCodeName
پشتیبانی نمی شوند.
- شما باید مقدار ویژگی
- ویژگی
reportEnabled
برای هشدارهای غیرعادی پشتیبانی نمی شود.
فراخوانی API مثال زیر یک هشدار ناهنجاری ایجاد میکند که وقتی کدهای وضعیت 5xx با نرخ متوسطی برای همه پراکسیهای API در محیط prod برای هر منطقه رخ میدهند، فعال میشود. هنگامی که هشدار فعال می شود، یک اعلان به آدرس ایمیل مشخص شده ارسال می شود:
curl 'https://apimonitoring.enterprise.apigee.com/alerts' \ -X POST \ -H 'Accept: application/json, text/plain, */*' -H "Content-Type: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN" \ -d '{ "organization":"myorg", "name":"5xx Anomaly Alert", "description":"My 5xx alert", "environment":"prod", "enabled":true, "alertType": "runtime", "alertSubType": "anomaly", "conditions":[ { "description":"", "dimensions":{ "org":"myorg", "env":"prod", "proxy":"ALL", "region":"ANY", "statusCode":"5xx" }, "metric":"count", "threshold": "moderate" } ], "notifications":[{ "channel":"email", "destination":"ops@acme.com" }], "playbook":"http://acme.com/myplaybook.html", "throttleIntervalSeconds":3600 }'
از رویدادهای API با ناهنجاری استفاده کنید
از /metrics/events
API برای دریافت همه رویدادهای یک سازمان برای یک بازه زمانی مشخص استفاده کنید. لیست رویدادها شامل ناهنجاریهایی است که توسط Edge شناسایی شدهاند و هر گونه هشدار فعالشده. هشدارها می توانند شامل هشدارهای ثابت و غیرعادی باشند.
به طور پیش فرض، API همه رویدادهای ساعت قبل را برمی گرداند. برای تعیین مدت زمان متفاوت از پارامترهای from
و to
query استفاده کنید. مقادیر پارامتر from
و to
پرس و جو برای تعیین مدت زمان متفاوت.
برای مثال، فراخوانی API زیر همه رویدادهای سازمان myorg
را برای 12 ساعت قبل برمیگرداند:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ "https://apimonitoring.enterprise.apigee.com/metrics/events?org=myorg&from=-12h&to=now"
همانطور که در دریافت نشانه دسترسی OAuth 2.0 توضیح داده شده است، $ACCESS_TOKEN
روی نشانه دسترسی OAuth 2.0 خود تنظیم کنید. برای اطلاعات در مورد گزینه های cURL استفاده شده در این مثال، استفاده از cURL را ببینید.
تماس بعدی همه رویدادهای غیرعادی را با یک آستانه متوسط در 24 ساعت گذشته برمیگرداند:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ "https://apimonitoring.enterprise.apigee.com/metrics/events?org=myorg&type=anomaly&threshold=moderate&from=-24h&to=now"
فقط پارامتر org
query برای این API مورد نیاز است. همراه با پارامترهای پرس و جو شرح داده شده در سند API در /metrics/events
، این API از گزینه های زیر برای پشتیبانی از تشخیص ناهنجاری پشتیبانی می کند:
نام | توضیحات | پیش فرض |
---|---|---|
threshold | رویدادها را بر اساس آستانه مشخص شده فیلتر کنید: فقط زمانی مجاز است که | همه شدت ها |
type | رویدادها را بر اساس نوع مشخص شده فیلتر کنید: alert یا anomaly . چندین مقدار را به عنوان یک لیست جدا شده با کاما مشخص کنید. | همه انواع |