تحميل بيانات عدد زيارات واجهة برمجة التطبيقات إلى Apigee - الإصدار التجريبي

Edge for Private Cloud، الإصدار 4.17.09

على جميع عملاء Edge for Private Cloud إرسال إحصاءات حول زيارات الخادم الوكيل لواجهة برمجة التطبيقات إلى Apigee. تنصح Apigee العملاء بتحميل هذه المعلومات مرة واحدة في اليوم، وربما من خلال إنشاء مهمة cron.

يجب إرسال البيانات الخاصة بعمليات نشر واجهة برمجة التطبيقات للإنتاج، وليس البيانات المتعلقة بواجهات برمجة التطبيقات أثناء عمليات التطوير أو الاختبار. في معظم عمليات تثبيت Edge، ستحدّد مؤسسات أو بيئات معيّنة لواجهات برمجة التطبيقات في مرحلة الإنتاج. إنّ البيانات التي ترسلها مخصّصة فقط لتلك الإصدارات العلنية والبيئات والهيئات.

للمساعدة في تحميل هذه البيانات، توفّر Apigee الإصدار التجريبي من أداة سطر الأوامر apigee-analytics-collector. تُرسِل هذه الأداة تقرير عدد طلبات البيانات من واجهة برمجة التطبيقات إلى Apigee. يمكن لكل عملية تثبيت من Edge for Private Cloud استخدام هذه الأداة لاسترداد بيانات الزيارات وإعداد تقارير عنها وإرسالها إلى Apigee.

الوصول إلى البيانات التي حمّلها الإجراء apigee-analytics-collector

بعد تحميل البيانات باستخدام الأداة apigee-analytics-collector، يمكنك الاطّلاع عليها في Apigee 360.

لعرض البيانات، سجِّل الدخول إلى Apigee 360، ثم حدِّد خيار الاستخدام. تعرض صفحة الاستخدام رسمًا بيانيًا للاستخدام وجدولاً لبيانات الاستخدام لكلّ من المؤسسات في Edge.

تثبيت apigee-analytics-collector

أداة apigee-analytics-collector هي عائد لكل ألف ظهور تثبّته باستخدام أداة apigee-service.

مكان التثبيت

يمكن أن تكون العقدة التي يتم تثبيت الأداة apigee-analytics-collector عليها هي أي عقدة يمكنها الوصول إلى واجهة برمجة تطبيقات إدارة Edge على خادم إدارة Edge. يمكنك تثبيته مباشرةً على "خادم الإدارة" أو على عقدة أخرى من عملية تثبيت Edge أو على node منفصلة طالما أنّ هذه العقدة يمكنها إرسال طلبات واجهة برمجة التطبيقات إلى "خادم الإدارة".

متطلبات الاتصال بالإنترنت

ثبِّت أداة apigee-analytics-collector على جهاز متصل بالإنترنت خارجي. بعد ذلك، يمكن للأداة apigee-analytics-collector تحميل البيانات مباشرةً إلى Apigee.

إذا لم تكن هناك عقدة تتيح الوصول إلى واجهة برمجة التطبيقات Edge management API على Edge Management Server والوصول إلى الإنترنت الخارجي، يمكنك استخدام واجهة برمجة التطبيقات Edge management API لحفظ بيانات الزيارات محليًا. بعد ذلك، عليك نقل البيانات إلى جهاز متصل بالإنترنت لتحميلها إلى 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-analytics-collector

يجب تشغيل apigee-analytics-collector كمستخدم ليس لديه إذن "المشرف". يجب أن يكون لدى هذا المستخدم إذن وصول sudo كامل إلى مستخدم "apigee".

لإعداد مستخدم لمنحه إذن الوصول الكامل إلى برنامج sudoers، استخدِم الأمر "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-analytics-collector

ستحتاج إلى المعلومات التالية لتشغيل الأمر apigee-analytics-collector وإعادة توجيه البيانات إلى Apigee:

  • apigee_mgmt_api_uri: عنوان URL الأساسي لواجهة برمجة التطبيقات Edge API على "خادم إدارة" يكون عنوان URL هذا عادةً على النحو التالي:
    http://ms_IP:8080/v1

    حيث يكون ms_IP هو عنوان IP أو خادم الإدارة ويكون 8080 هو المنفذ المستخدَم من قِبل Edge API. إذا أنشأت إدخالًا في نظام أسماء النطاقات لواجهة برمجة التطبيقات Edge API، سيكون عنوان URL على النحو التالي:
    http://ms_DNS/v1

    في حال تفعيل بروتوكول TLS في واجهة برمجة التطبيقات Edge management API، سيكون على النحو التالي:
    https://ms_IP:8080/v1
    https://ms_DNS/v1
  • apigee_mgmt_api_email: عنوان البريد الإلكتروني لحساب يمكنه الوصول إلى واجهات برمجة تطبيقات /stats في Edge. غالبًا ما يكون هذا هو عنوان البريد الإلكتروني لمشرف نظام Edge، أو عنوان البريد الإلكتروني لمشرف المؤسسة في المؤسسات التي تنشر المحتوى.
  • apigee_mgmt_api_password: كلمة مرور Edge للحساب المحدّد من خلال apigee_mgmt_api_email.
  • apigee_analytics_client_id وapigee_analytics_secret: بيانات اعتمادك لتحميل البيانات إلى Apigee يُرجى إرسال طلب دعم إلى فريق دعم Apigee للحصول على 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 <قائمة مفصولة بفواصل بالعناصر>
  • -x, --exclude_orgs <قائمة مفصولة بفواصل بالعناصر>
  • -n, --include_envs <comma-separated list of items>
  • -e, --exclusion_envs <قائمة العناصر المفصولة بفواصل>

على سبيل المثال، لتحديد المؤسسات والبيئات العلنية فقط، استخدِم الخيارين -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>

سمة الزيارات المطلوب جمعها السمات الصالحة: apiproducts وdevs وapps وapiproxy (الإعداد التلقائي)

-d, --days <days>

عدد الأيام السابقة، بدءًا من التاريخ الحالي، للبيانات المطلوب جمعها. القيمة التلقائية هي 3.

إذا حددت -d، لا تحدّد أيضًا -s وz- لضبط نطاق زمني.

-m, --apigee_mgmt_api_uri <apigee_mgmt_api_uri>

واجهة برمجة تطبيقات إدارة عنوان URL إلى Edge

-u, --apigee_mgmt_api_email <apigee_mgmt_api_email>

عنوان البريد الإلكتروني لحساب يمكنه الوصول إلى واجهات برمجة تطبيقات Edge /stats. غالبًا ما يكون هذا هو عنوان البريد الإلكتروني لمشرف نظام Edge، أو عنوان البريد الإلكتروني لمشرف المؤسسة في مؤسسات الإنتاج.

-p, --apigee_mgmt_api_password <apigee_mgmt_api_password>

كلمة المرور المرتبطة بحساب البريد الإلكتروني الخاص بواجهة برمجة تطبيقات إدارة Edge الذي تم تحديده من خلال -u.

-i, --include_orgs <items>

قائمة مفصولة بفواصل من المؤسسات المطلوب تضمينها في المخرجات.

-x, --exclude_orgs <items>

قائمة مفصولة بفواصل بالمؤسّسات المطلوب استبعادها من الإخراج

-n, --include_envs <items>

قائمة مفصولة بفواصل للبيئات المطلوب تضمينها في الناتج.

-e، --استبعاد_envs <items>

قائمة مفصولة بفواصل بالبيئات المطلوب تضمينها من الإخراج

-o, --output <path>

المسار واسم الملف لحفظ الإخراج

-s, --time_range_start <time_range_start>

النطاق الزمني لبدء الاستعلام عن إحصاءات حركة المرور، على النحو: "03/01/2016 00:00".

إذا حدّدت الخيار -d، لا تحدّد أيضًا الخيارَين -s و-z لضبط نطاق زمني.

-z, --time_range_end <time_range_end>

نهاية النطاق الزمني لطلب إحصاءات عدد الزيارات، بالتنسيق: "01/04/2016 24:00".

إذا حدّدت الخيار -d، لا تحدّد أيضًا الخيارَين -s و-z لضبط نطاق زمني.

-t, --time_unit <time_unit>

وحدة قياس الوقت لبيانات الزيارات الأسبوع التلقائي. الوحدات التلقائية حسب الساعة الوحدات الزمنية الصالحة: ثانية ودقيقة وساعة ويوم وأسبوع

-S, --standard_output

اكتب الإخراج في وحدة التحكّم (stdout) بدلاً من تحميله إلى Apigee.

-c, --apigee_analytics_client_id &lt;apigee_analytics_client_id&gt;

رقم التعريف الخاص بك لتحميل البيانات إلى Apigee يُرجى إرسال طلب دعم إلى فريق دعم Apigee للحصول على الرمز.

-r، أو --apigee_analytics_secret <apigee_analytics_secret>

الطريقة السرّية لتحميل البيانات إلى Apigee. يُرجى إرسال طلب دعم إلى فريق دعم Apigee للحصول على الرمز.

-R, --include_curl_commands

يمكنك تضمين أوامر cURL التي تم إنشاؤها في الإخراج لتصحيح الأخطاء.

-v, --verbose

عرض معلومات تفصيلية

تحميل البيانات يدويًا إلى Apigee

تنصح شركة Apigee بتثبيت الأداة apigee-analytics-collector على جهاز يمكنه الوصول إلى الإنترنت الخارجي. بعد ذلك، يمكن للأداة apigee-analytics-collector تحميل data مباشرةً إلى Apigee.

ومع ذلك، إذا لم يكن الجهاز متصلاً بالإنترنت الخارجي، استخدِم Edge management API لجمع بيانات الزيارات، ثم استخدِم أوامر 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/?select=sum(message_count)&timeRange=MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM"

يستخدم هذا الأمر واجهة برمجة التطبيقات Edge Get API لحساب عدد الرسائل. وفي هذا الأمر:

  • تحدِّد apigee_mgmt_api_email:apigee_mgmt_api_password عنوان البريد الإلكتروني لحساب يمكنه الوصول إلى واجهات برمجة التطبيقات Edge /stats.
  • ‎<ms_IP> هو عنوان IP أو اسم نظام أسماء النطاقات لخادم إدارة Edge.
  • {org_name} و{env_name} يحدّدان المؤسسة والبيئة.
  • MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM يحدِّد النطاق الزمني للإحصاءات التي سيتم جمعها. لاحِظ أنّ الأمر 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/?select=sum(message_count)&timeRange=08/29/2016%2000:00~08/30/2016%2000:00"

من المفترض أن يظهر لك ردّ في النموذج:

{
  "environments" : [ {
    "metrics" : [ {
      "name" : "sum(message_count)",
      "values" : [ "42.0" ]
    } ],
    "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 الذي استخدمته لجمع الإحصاءات أعلاه.