على جميع عملاء Edge for Private Cloud إرسال إحصاءات إلى Apigee حول زيارات الخادم الوكيل لواجهة برمجة التطبيقات. تنصح Apigee بأن يقوم العملاء بتحميل تلك المعلومات مرة واحدة في اليوم، ربما عن طريق إنشاء مهمة cron.
يجب إرسال البيانات الخاصة بعمليات نشر واجهة برمجة التطبيقات الإنتاجية، وليس بيانات واجهات برمجة التطبيقات التي تكون قيد التطوير أو عمليات نشر اختبارية. في معظم عمليات تثبيت Edge، ستحدد مؤسسات أو بيئات محددة لواجهات برمجة تطبيقات الإنتاج. البيانات التي ترسلها مخصصة فقط لمؤسسات وبيئات الإنتاج هذه.
للمساعدة في تحميل هذه البيانات، يوفّر Apigee الإصدار التجريبي من أداة سطر الأوامر apigee-analytics-collector
. ترسل هذه الأداة تقرير حجم المكالمات من واجهة برمجة التطبيقات مرة أخرى إلى Apigee. يمكن لكل تثبيت Edge
الخاص بـ Private Cloud استخدام هذه الأداة لاسترداد بيانات حركة المرور والإبلاغ عنها
في Apigee.
الإجراء المطلوب: يُرجى التواصل مع فريق دعم Apigee قبل تحميل البيانات.
قبل أن تتمكن من تحميل البيانات إلى Apigee، عليك التواصل مع فريق دعم Apigee Edge لإكمال عملية الإعداد.
تثبيت أداة تجميع إحصاءات apigee
إنّ الأداة apigee-analytics-collector
هي أداة لكل ألف مشاهدة يمكنك تثبيتها باستخدام الأداة المساعدة apigee-service
.
مكان التركيب
ويمكن أن تكون العقدة التي يتم تثبيت الأداة المساعدة apigee-analytics-collector
عليها أي عقدة يمكنها الوصول إلى واجهة برمجة تطبيقات إدارة Edge على خادم إدارة Edge. يمكنك تثبيت التحديث مباشرةً في خادم الإدارة، أو على عقدة أخرى من تثبيت Edge، أو على عقدة منفصلة طالما أن هذه العقدة يمكنها إرسال طلبات واجهة برمجة التطبيقات إلى خادم الإدارة.
متطلبات الوصول إلى الإنترنت
عليك تثبيت الأداة apigee-analytics-collector
على
جهاز متصل بالإنترنت. بعد ذلك، يمكن لأداة apigee-analytics-collector
تحميل البيانات مباشرةً إلى Apigee.
إذا لم يكن هناك عقدة تتضمن إمكانية الوصول إلى واجهة برمجة تطبيقات إدارة Edge على خادم إدارة Edge
والوصول إلى الإنترنت الخارجي، يمكنك استخدام واجهة برمجة تطبيقات إدارة Edge لحفظ بيانات حركة البيانات محليًا. يجب بعد ذلك نقل البيانات إلى جهاز مزوّد بإمكانية الوصول إلى الإنترنت لتحميلها إلى
Apigee. في هذا السيناريو، لن تحتاج إلى استخدام الأداة المساعدة apigee-analytics-collector
. لمزيد من المعلومات، يمكنك الاطّلاع على
تحميل البيانات يدويًا إلى
Apigee.
تثبيت
استخدم الأمر التالي لتثبيت الأداة apigee-analytics-collector
بما أنّك تثبّت ملف RPM، يجب أن يشغّل هذا الأمر المستخدم الجذر أو مستخدم لديه إذن وصول كامل إلى برنامج sudo. بالنسبة إلى إذن الوصول الكامل إلى برنامج sudo، يعني ذلك أنّ المستخدم لديه إذن الوصول إلى برنامج sudo لإجراء العمليات نفسها كجذر.
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector install
تشغيل أداة تجميع إحصاءات التطبيقات
يصف هذا القسم كيفية تشغيل أداة apigee-analytics-collector
.
ضبط مستخدم لتشغيل أداة جمع إحصاءات واجهة برمجة التطبيقات
يجب تشغيل apigee-analytics-collector
كمستخدم ليس له جذر. يجب أن يتمتع هذا المستخدم بحق الوصول الكامل إلى مستخدم "apigee".
لإعداد مستخدم يمتلك إذن وصول sudo الكامل إلى مستخدم "apigee"، استخدِم الأمر "visudo" لتعديل ملف sudoers لإضافة:
analyticsUser ALL=(apigee) NOPASSWD: ALL
حيث يكون analyticsUser هو اسم المستخدم للشخص الذي يشغّل أداة apigee-analytics-collector
.
بعد تثبيت أداة apigee-analytics-collector
وإعداد المستخدم، يمكنك اختبار الأداة من خلال تشغيل أمر المساعدة
للأداة apigee-analytics-collector
:
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic --help
معلومات مطلوبة لتشغيل أداة جمع إحصاءات apigee
يجب توفير المعلومات التالية لتشغيل الأمر apigee-analytics-collector
وإعادة توجيه البيانات إلى Apigee:
apigee_mgmt_api_uri
: عنوان URL الأساسي لواجهة برمجة تطبيقات Edge على خادم الإدارة. ويكون عنوان URL هذا عادةً على الشكل التالي:http://ms_IP:8080/v1
يكون ms_IP هو عنوان IP أو خادم الإدارة، ويكون 8080 هو المنفذ الذي تستخدمه واجهة برمجة تطبيقات Edge. إذا أنشأت إدخال نظام أسماء النطاقات لواجهة برمجة تطبيقات Edge، سيكون عنوان URL على النحو التالي:
http://ms_DNS/v1
إذا فعّلت بروتوكول أمان طبقة النقل (TLS) على واجهة برمجة تطبيقات إدارة Edge، سيكون على النحو التالي:
https://ms_IP:8080/v1 https://ms_DNS/v1
apigee_mgmt_api_email
: عنوان البريد الإلكتروني لحساب يمكنه الوصول إلى واجهات برمجة تطبيقات Edge/stats
. ويكون في الغالب عنوان البريد الإلكتروني الخاص بمشرف نظام Edge أو البريد الإلكتروني لمشرف المؤسسة في مؤسسات الإنتاج في مؤسستك.apigee_mgmt_api_password
: كلمة مرور Edge للحساب الذي تم تحديده من خلالapigee_mgmt_api_email
.apigee_analytics_client_id
وapigee_analytics_secret: بيانات الاعتماد لتحميل البيانات إلى Apigee يُرجى إرسال طلب دعم إلى فريق دعم Apigee Edge للحصول علىapigee_analytics_client_id
وapigee_analytics_secret
.
أمثلة على الطلبات
يظهر أدناه مثال على أمر لاسترداد بيانات حركة المرور لجميع المؤسسات والبيئات في عملية تثبيت Edge وتحميلها إلى Apigee. لاحِظ طريقة استخدام apigee-service
لتشغيل الأمر apigee-analytics-collector
:
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic \ --apigee_mgmt_api_uri http://192.168.56.103:8080/v1 \ --apigee_mgmt_api_email $ae_username \ --apigee_mgmt_api_password $ae_password \ --apigee_analytics_client_id $apigee_analytics_client_id \ --apigee_analytics_secret $apigee_analytics_secret
تجدر الإشارة إلى أنّ الأمر يحتوي على جميع المعلومات المطلوبة، مثل apigee_analytics_client_id وapigee_analytics_secret.
من المفترض أن تظهر لك النتائج على النحو التالي:
[ { "org": "myOrg", "env": "prod", "time_range_start": "08/27/2016 00:00", "time_range_end": "08/30/2016 00:00", "response": [ { "store_org_env_metrics_hourly_v4": 1 } ] }, { "org": "VALIDATE", "env": "test", "time_range_start": "08/27/2016 00:00", "time_range_end": "08/30/2016 00:00", "response": [ { "store_org_env_metrics_hourly_v4": 1 } ] } ]
استخدِم خيارات سطر الأوامر في الأمر للتحكّم في إجراءاته. استخدِم الخيارات التالية لتحديد المؤسسات والبيئات المطلوب تضمينها في البيانات التي يتم إنشاؤها:
-i, --include_orgs comma-separated list of items
-x, --exclude_orgs comma-separated list of items
-n, --include_envs comma-separated list of items
-e, --exclude_envs comma-separated list of items
على سبيل المثال، لتحديد المؤسسات والبيئات الإنتاجية فقط، استخدِم الخيارَين -i
(أو --include_orgs
) و-n
(أو --include_envs)
):
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic -i myOrg -n prod \ --apigee_mgmt_api_uri http://192.168.56.103:8080/v1 \ --apigee_mgmt_api_email $ae_username \ --apigee_mgmt_api_password $ae_password \ --apigee_analytics_client_id $apigee_analytics_client_id \ --apigee_analytics_secret $apigee_analytics_secret
في هذا المثال، يتم جمع البيانات فقط من بيئة المنتج للسمة myOrg
.
لتفريغ البيانات على شاشة من أجل فحصها قبل إرسالها إلى Apigee، استخدِم الخيار -S
:
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic -i myOrg -n prod -S \ --apigee_mgmt_api_uri http://192.168.56.103:8080/v1 \ --apigee_mgmt_api_email $ae_username \ --apigee_mgmt_api_password $ae_password \ --apigee_analytics_client_id $apigee_analytics_client_id \ --apigee_analytics_secret $apigee_analytics_secret
يؤدي الخيار -S
إلى حذف البيانات التي تم تحميلها إلى Apigee. يمكنك بعد ذلك إعادة تنفيذ الأمر بدون الخيار -S
لإرسال البيانات إلى Apigee.
بهدف استخدام الخيار -S
،
يمكنك عرض أنواع مختلفة من البيانات محليًا. تتطلّب Apigee فقط
تحميل بيانات عدد زيارات واجهة برمجة التطبيقات، لكنّ الخيار -D
يتيح لك عرض بيانات حول منتجات واجهة برمجة التطبيقات
أو المطوّرين أو التطبيقات أو الخوادم الوكيلة لواجهة برمجة التطبيقات. يستخدم المثال التالي الخيارَين -D
و-S
لعرض بيانات المطوّر محليًا:
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic -i myOrg -n prod -S -D devs \ --apigee_mgmt_api_uri http://192.168.56.103:8080/v1 \ --apigee_mgmt_api_email $ae_username \ --apigee_mgmt_api_password $ae_password \ --apigee_analytics_client_id $apigee_analytics_client_id \ --apigee_analytics_secret $apigee_analytics_secret
يمكنك تضمين الخيار -v
للحصول على نتائج مطوَّلة، وخيار -R
لعرض أوامر curl التي ينشئها apigee-analytics-collector
:
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic -i myOrg -n prod -S -R -v \ --apigee_mgmt_api_uri http://192.168.56.103:8080/v1 \ --apigee_mgmt_api_email $ae_username \ --apigee_mgmt_api_password $ae_password \ --apigee_analytics_client_id $apigee_analytics_client_id \ --apigee_analytics_secret $apigee_analytics_secret
يحتوي القسم التالي على قائمة كاملة بخيارات سطر الأوامر.
مَعلمات الأوامر
يسرد الجدول التالي مجموعة كاملة من الخيارات لأداة apigee-analytics-collector
:
Command | الوصف |
---|---|
-h, --help |
معلومات استخدام النتائج |
-D, --dimension dimension |
سمة الزيارات المطلوب جمعها. القيم الصالحة هي:
|
-d, --days days
|
عدد الأيام السابقة للبيانات المطلوب جمعها، بدءًا من التاريخ الحالي. والعدد التلقائي هو 3. إذا حددت |
-m, --apigee_mgmt_api_uri apigee_mgmt_api_uri |
عنوان URL لواجهة برمجة تطبيقات إدارة Edge. |
-u, --apigee_mgmt_api_email apigee_mgmt_api_email |
عنوان البريد الإلكتروني لحساب يمكنه الوصول إلى واجهات برمجة تطبيقات Edge |
-p, --apigee_mgmt_api_password apigee_mgmt_api_password |
كلمة المرور المرتبطة بحساب البريد الإلكتروني لواجهة برمجة تطبيقات إدارة Edge المحدد من قِبل
|
-i, --include_orgs items
|
قائمة مفصولة بفواصل تضم المؤسسات التي سيتم تضمينها في الإخراج. |
-x, --exclude_orgs items
|
قائمة مفصولة بفواصل بالمؤسسات المطلوب استبعادها من الإخراج. |
-n, --include_envs items
|
قائمة بالبيئات مفصولة بفواصل لتضمينها في الإخراج |
-e, --exclude_envs items
|
قائمة مفصولة بفواصل من البيئات المطلوب تضمينها من الإخراج. |
-o, --output path
|
المسار واسم الملف لحفظ الإخراج. |
-s, --time_range_start time_range_start
|
النطاق الزمني لبدء طلب البحث عن إحصاءات حركة المرور، بالصيغة: "MM/DD/YYYY HH:MM". في حال تحديد |
-z, --time_range_end time_range_end
|
نهاية النطاق الزمني للاستعلام عن إحصاءات حركة المرور، بالصيغة: "04/01/2016 24:00". في حال تحديد |
-t, --time_unit time_unit
|
الوحدة الزمنية لبيانات حركة المرور. ستكون القيمة التلقائية
إذا ضبطت |
-S, --standard_output
|
اكتب مخرجات على الوحدة الطرفية (stdout)، بدلاً من تحميلها على Apigee. |
-c, --apigee_analytics_client_id apigee_analytics_client_id
|
رقم التعريف الخاص بك لتحميل البيانات إلى Apigee يُرجى إرسال طلب دعم إلى فريق دعم Apigee Edge للحصول عليه. |
-r, --apigee_analytics_secret apigee_analytics_secret
|
سرك لتحميل البيانات إلى Apigee. يُرجى إرسال طلب دعم إلى فريق دعم Apigee Edge للحصول عليه. |
-R, --include_curl_commands
|
تضمين أوامر |
-v, --verbose
|
عرض المحتوى المطوَّل |
تحميل البيانات يدويًا إلى Apigee
تنصح Apigee بتثبيت الأداة apigee-analytics-collector
على جهاز متصل بالإنترنت. بعد ذلك، يمكن لأداة apigee-analytics-collector
تحميل البيانات مباشرةً إلى Apigee.
إذا لم يكن الجهاز متصلاً بالإنترنت خارجيًا، يمكنك استخدام واجهة برمجة تطبيقات إدارة Edge
لجمع بيانات حركة البيانات، ثم استخدام أوامر curl
لتحميلها إلى Apigee من
جهاز متصل بالإنترنت. يجب تكرار هذه العملية لكل مؤسسة وبيئة إنتاج
في عملية تثبيت Edge.
استخدِم الأمر curl
التالي لجمع بيانات حركة المرور لمؤسسة وبيئة معيّنة خلال فترة زمنية محدّدة:
curl -X GET -u apigee_mgmt_api_email:apigee_mgmt_api_password \ "http://ms_IP:8080/v1/organizations/org_name/environments/env_name/stats/apiproxy?select=sum(message_count)&timeRange=MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM&timeUnit=hour"
يستخدم هذا الأمر واجهة برمجة التطبيقات لعدد الرسائل من واجهة برمجة التطبيقات Edge Get API. وفي هذا الأمر:
- تحدّد apigee_mgmt_api_email:apigee_mgmt_api_password عنوان البريد الإلكتروني لحساب يمكنه الوصول إلى واجهات برمجة تطبيقات Edge /stats.
- ms_IP هو عنوان IP أو اسم نظام أسماء النطاقات لخادم إدارة Edge.
- يحدّد كل من org_name وenv_name المؤسسة والبيئة.
- apiproxy هو البعد الذي يجمع المقاييس حسب الخوادم الوكيلة لواجهة برمجة التطبيقات.
MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM&timeUnit=hour
تحدِّد النطاق الزمني مقسّمًا إلى وحدات زمنية للمقاييس المطلوب جمعها. لاحِظ أنّ الأمرcurl
يستخدم الرمز السداسي العشري%20
للمساحات في النطاق الزمني.
على سبيل المثال، لجمع أعداد رسائل الخادم الوكيل لواجهة برمجة التطبيقات ساعة بساعة على مدار 24 ساعة، استخدِم طلب بيانات من واجهة برمجة التطبيقات التالي.
curl -X GET -u apigee_mgmt_api_email:apigee_mgmt_api_password \ "http://192.168.56.103:8080/v1/organizations/myOrg/environments/prod/stats/apiproxy?select=sum(message_count)&timeRange=01%2F01%2F2018%2000%3A00~01%2F02%2F2018%2000%3A00&timeUnit=hour"
(ملاحظة: يحتوي timeRange
على أحرف مرمّزة في عنوان URL.)
من المفترض أن يظهر لك رد بالنموذج:
{ "environments" : [ { "dimensions" : [ { "metrics" : [ { "name" : "sum(message_count)", "values": [ { "timestamp": 1514847600000, "value": "35.0" }, { "timestamp": 1514844000000, "value": "19.0" }, { "timestamp": 1514840400000, "value": "58.0" }, { "timestamp": 1514836800000, "value": "28.0" }, { "timestamp": 1514833200000, "value": "29.0" }, { "timestamp": 1514829600000, "value": "33.0" }, { "timestamp": 1514826000000, "value": "26.0" }, { "timestamp": 1514822400000, "value": "57.0" }, { "timestamp": 1514818800000, "value": "41.0" }, { "timestamp": 1514815200000, "value": "27.0" }, { "timestamp": 1514811600000, "value": "47.0" }, { "timestamp": 1514808000000, "value": "66.0" }, { "timestamp": 1514804400000, "value": "50.0" }, { "timestamp": 1514800800000, "value": "41.0" }, { "timestamp": 1514797200000, "value": "49.0" }, { "timestamp": 1514793600000, "value": "35.0" }, { "timestamp": 1514790000000, "value": "89.0" }, { "timestamp": 1514786400000, "value": "42.0" }, { "timestamp": 1514782800000, "value": "47.0" }, { "timestamp": 1514779200000, "value": "21.0" }, { "timestamp": 1514775600000, "value": "27.0" }, { "timestamp": 1514772000000, "value": "20.0" }, { "timestamp": 1514768400000, "value": "12.0" }, { "timestamp": 1514764800000, "value": "7.0" } ] } ], "name" : "proxy1" } ], "name" : "prod" } ], "metaData" : { "errors" : [ ], "notices" : [ "query served by:53dab80c-e811-4ba6-a3e7-b96f53433baa", "source pg:6b7bab33-e732-405c-a5dd-4782647ce096", "Table used: myorg.prod.agg_api" ] } }
لتحميل تلك البيانات بعد ذلك إلى Apigee من جهاز متصل بالإنترنت، استخدِم أمر curl
التالي:
curl -X POST -H 'Content-Type:application/json' \ -u apigee_analytics_client_id:apigee_analytics_secret \ https://nucleus-api-prod.apigee.com/v1/apigee-analytics-cli-api/traffic/orgs/org_name/apis -d '"environments"...'
المكان:
- apigee_analytics_client_id:apigee_analytics_secret حدِّد بيانات الاعتماد لتحميل البيانات إلى Apigee التي حصلت عليها من Apigee.
- يحدّد org_name اسم المؤسسة.
- يتضمّن "environments"... نتائج الأمر
curl
الذي استخدمته لجمع الإحصاءات أعلاه.