سياسة مُحصِّل الإحصاءات

يتم الآن عرض مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
معلومات

الموضوع

تتيح لك هذه الميزة جمع إحصاءات عن البيانات في رسالة، مثل معرّف المنتج والسعر وإجراء REST وعنوان URL للعميل وعنوان URL المستهدَف وطول الرسالة. ويمكن أن تأتي البيانات من متغيّرات التدفق المحدّدة مسبقًا من خلال Apigee أو المتغيرات المخصَّصة التي تحدّدها.

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

عيّنات

مثال أساسي

<StatisticsCollector name="publishPurchaseDetails">
  <Statistics>
    <Statistic name="productID" ref="product.id" type="string">999999</Statistic>
    <Statistic name="price" ref="product.price" type="string">0</Statistic>
  </Statistics>
</StatisticsCollector>

في هذا المثال، تجمع معلومات إحصائية حول متغيّرَين مخصّصَين: product.id وproduct.price. وفي كل طلب، تكتب سياسة جهة جمع الإحصاءات قيمة هذين المتغيّرين في خادم الإحصاءات.

يحدّد هذا المثال أيضًا قيمة تلقائية اختيارية لكل متغيّر، حيث تكون القيمة التلقائية للسمة product.id هي 999999 والقيمة التلقائية للسمة product.price هي 0. إذا كان المتغيّر غير محدّد ولم تحدّد قيمة تلقائية، لن يتم تسجيل أي بيانات للمتغيّر. إذا حددت قيمة تلقائية، سيتم تسجيل القيمة التلقائية عندما يكون المتغيّر غير محدّد.

بعد جمع البيانات الإحصائية، يمكنك استخدام واجهة مستخدم إدارة Edge أو واجهة برمجة التطبيقات لاسترداد الإحصاءات. عند استرداد الإحصاءات، تشير إلى البيانات التي تم جمعها لهذه المتغيّرات باعتبارها productID وprice على التوالي.

الوصول إلى الإحصاءات

في هذا المثال، يتم استخدام واجهة برمجة تطبيقات إدارة Edge لعرض البيانات الإحصائية للمجموعة التي تُسمى productID. ينشئ هذا الطلب تقريرًا مخصصًا لمعرّفات المنتجات استنادًا إلى مجموع أعداد الرسائل المُرسَلة لكل معرّف منتج في كل يوم. استبدِل اسم مؤسستك بالمتغيّر {org_name} واستبدل عنوان البريد الإلكتروني وكلمة المرور لحسابك على Apigee Edge بـ email:password.

اضبط المَعلمة timeRange لتضمين الفاصل الزمني الذي تم فيه جمع بياناتك. لا يمكن الوصول تلقائيًا إلى البيانات الأقدم من ستة أشهر من التاريخ الحالي. إذا أردت الوصول إلى البيانات الأقدم من ستة أشهر، يُرجى التواصل مع فريق دعم Apigee Edge.

$ curl https://api.enterprise.apigee.com/v1/o/{org_name}/environments/test/stats/productID?"select=sum(message_count)&timeRange=1/19/2015%2000:00~6/21/2015%2000:00&timeUnit=day"
-u email:password

في الردّ، يحتوي حقل name على معرّف المنتج وتعرض القيمة عدد الطلبات لكل يوم:

{
  "environments" : [ {
    "dimensions" : [ {
      "metrics" : [ {
        "name" : "sum(message_count)",
        "values" : [ {
          "timestamp" : 1353369600000,
          "value" : "4.0"
        } ]
      } ],
      "name" : "52"
    }, {
      "metrics" : [ {
        "name" : "sum(message_count)",
        "values" : [ {
          "timestamp" : 1353369600000,
          "value" : "19.0"
        } ]
      } ],
      "name" : "14"
    }, ...
  } ],
  "metaData" : {
    "samplingRate" : "100"
  }
}

استخراج البيانات للجمع

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ExtractVariables async="false" continueOnError="false" enabled="true" name="GetWeatherData">
    <VariablePrefix>weather</VariablePrefix>
    <XMLPayload>
       <Namespaces>
          <Namespace prefix="yweather">http://xml.weather.yahoo.com/ns/rss/1.0</Namespace>
       </Namespaces>
       <Variable name="location" type="string">
          <XPath>/rss/channel/yweather:location/@city</XPath>
       </Variable>
       <Variable name="condition" type="string">
          <XPath>/rss/channel/item/yweather:condition/@text</XPath>
       </Variable>
    </XMLPayload>
</ExtractVariables>

تتطلب سياسة جهة جمع الإحصاءات تخزين البيانات التي تم جمعها في متغيرات. يمكن تحديد هذه المتغيرات مسبقًا من خلال Apigee أو المتغيرات المخصّصة التي تحدّدها.

في هذا المثال، يتم استخدام سياسة "استخراج المتغيّرات" لاستخراج البيانات من حمولة XML التي تتضمّن معلومات الطقس. تساعد هذه السياسة في تحقيق ما يلي:

  • استخراج اسم المدينة وكتابتها إلى متغير يسمى weather.location
  • لاستخراج الظروف الحالية وكتابتها إلى متغير يسمى weather.condition

يمكنك بعد ذلك استخدام سياسة جهة جمع الإحصاءات لجمع معلومات عن المتغيّرات، كما هو موضّح أدناه:

<StatisticsCollector name="publishPurchaseDetails">
  <Statistics>
    <Statistic name="weatherLocation" ref="weather.location" type="string"></Statistic>
    <Statistic name="weatherCondition" ref="weather.condition" type="string"></Statistic>
  </Statistics>
</StatisticsCollector>

للاطّلاع على برنامج تعليمي كامل يوضّح طريقة استخراج البيانات من حمولة XML الخاصة بسياسة "أداة جمع الإحصاءات"، يمكنك الاطّلاع على مقالة تحليل محتوى رسالة واجهة برمجة التطبيقات باستخدام الإحصاءات المخصّصة.


لمحة عن سياسة جهة جمع الإحصاءات

عند تنفيذها، تسجِّل سياسة جهة جمع الإحصاءات القيمة الحالية لمتغيّر واحد أو أكثر. يمكن أن تكون هذه المتغيرات متغيّرات تدفق محدَّدة مسبقًا من خلال Apigee أو متغيّرات مخصّصة تحدّدها. تتم كتابة هذه البيانات في خادم تحليلات Edge.

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

للاطّلاع على برنامج تعليمي كامل عن كيفية استخدام سياسة جهة جمع الإحصاءات، يُرجى الاطّلاع على المقالة تحليل محتوى رسالة واجهة برمجة التطبيقات باستخدام الإحصاءات المخصّصة.

مكان وضع السياسة

يمكنك وضع سياسة جهة جمع الإحصاءات في مسار الطلب أو الاستجابة للخادم الوكيل لواجهة برمجة التطبيقات. ومع ذلك، إذا وضعت عدة سياسات لأداة جمع الإحصاءات في خادم وكيل، تحدِّد آخر السياسة التي تم تنفيذها البيانات المكتوبة إلى خادم الإحصاءات والبيانات المكتوبة من خلال أي سياسات سابقة لأداة جمع الإحصاءات.

من السيناريوهات التي قد يكون لديك فيها عدة سياسات لأداة جمع الإحصاءات في خادم وكيل لواجهة برمجة التطبيقات، عندما يكون لديك سياسة في مسار الطلب أو الاستجابة، وأخرى في معالج الأخطاء. وفي حال حدوث خطأ في الخادم الوكيل لواجهة برمجة التطبيقات، تحدِّد أداة جمع الإحصاءات في معالج الأخطاء البيانات التي تم جمعها. ويمكنك استخدام أداة جمع الإحصاءات هذه لتسجيل معلومات عن الخطأ أو تسجيل أي معلومات أخرى تعتقد أنها ضرورية. وتحدّد جهة جمع الإحصاءات في معالج الأخطاء البيانات التي تم جمعها سواء كانت جهة جمع الإحصاءات في الطلب/الاستجابة قد تم تنفيذها من قبل أم لا.

لمزيد من المعلومات، يُرجى الاطّلاع على أخطاء المعالجة.

مرجع العنصر

يصف مرجع العنصر عناصر وسمات سياسة جهة جمع الإحصاءات.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<StatisticsCollector async="false" continueOnError="false" enabled="true" name="Statistics-Collector-1">
    <DisplayName>Statistics Collector 1</DisplayName>
    <Statistics>
        <Statistic name="statName" ref="varName" type="refDataType">defaultStatValue</Statistic>
    </Statistics>
</StatisticsCollector>

سمات <StatCollector>

<StatisticsCollector async="false" continueOnError="false" enabled="true" name="Stats-1">

يصف الجدول التالي السمات الشائعة لجميع العناصر الرئيسية للسياسة:

السمة الوصف تلقائي التواجد في المنزل
name

الاسم الداخلي للسياسة. يمكن أن تحتوي قيمة السمة name على أحرف وأرقام ومسافات وواصلات وشرطات سفلية ونقاط. ويجب ألا تتجاوز هذه القيمة 255 حرفًا.

اختياريًا، يمكنك استخدام العنصر <DisplayName> لتصنيف السياسة في محرّر الخادم الوكيل لواجهة مستخدم الإدارة باستخدام اسم بلغة مختلفة.

لا ينطبق عنصر مطلوب
continueOnError

يمكنك ضبطها على false لعرض رسالة خطأ عند تعذّر تنفيذ إحدى السياسات. ويُعدّ هذا سلوكًا متوقعًا في معظم السياسات.

يمكنك ضبط القيمة على true لمواصلة تنفيذ العملية حتى بعد تعذُّر تنفيذ السياسة.

false إجراء اختياري
enabled

اضبط الإعدادات على true لفرض السياسة.

اضبط السياسة على false لإيقاف السياسة. لن يتم فرض السياسة حتى لو بقيت مرفقة بمسار.

صحيح إجراء اختياري
async

تم إيقاف هذه السمة نهائيًا.

false منهي العمل به

عنصر <DisplayName>

يمكنك استخدام هذه السمة بالإضافة إلى السمة name لتصنيف السياسة في محرّر الخادم الوكيل لواجهة المستخدم الخاصة بالإدارة باستخدام اسم بلغة مختلفة.

<DisplayName>Policy Display Name</DisplayName>
تلقائي

لا ينطبق

إذا حذفت هذا العنصر، سيتم استخدام قيمة السمة name للسياسة.

التواجد في المنزل إجراء اختياري
Type سلسلة

عنصر <الإحصاءات>/<Statistic>

<Statistics>
    <Statistic name="statName" ref="varName" type="refDataType">defaultStatValue</Statistic>
</Statistics>
السمة الوصف تلقائي التواجد في المنزل
اسم

الاسم المستخدَم للإشارة إلى البيانات التي تم جمعها للمتغيّر المحدّد. عند عرض بيانات الإحصاءات، استخدِم هذا الاسم للإشارة إلى البيانات التي تم جمعها حول المتغيّر المحدّد من خلال السمة ref.

إذا كان المتغيّر المحدَّد من قِبل ref غير محدّد في الطلب أو الاستجابة، تحدّد السمة defaultStatValue القيمة التي تم جمعها للمتغيّر. إذا حذفت القيمة التلقائية، لن يتم جمع أي بيانات للمتغيّر عندما يكون المتغيّر غير محدّد.

القيود المفروضة على التسمية

تنطبق قيود التسمية التالية على متغيّرات الإحصاءات المخصّصة:

لا ينطبق حقل مطلوب
المرجع

متغير التدفق الذي تجمع إحصاءات له. يمكن أن يكون هذا المتغيّر متغيّرًا للتدفق تم تحديده مسبقًا من خلال Apigee أو متغيّرًا مخصّصًا تحدّدها أنت في الخادم الوكيل لواجهة برمجة التطبيقات.

غالبًا ما تشير السمة ref إلى متغيّر مخصّص تحدّده سياسة استخراج المتغيّرات. اطّلِع على سياسة استخراج المتغيّرات لمعرفة مزيد من المعلومات.

لا ينطبق حقل مطلوب
كتابة

تحدد هذه السمة نوع البيانات للمتغيّر الذي تحدّده السمة ref. والقيم الصالحة هي: سلسلة/عدد صحيح/عائم/طويل/مزدوج/منطقي.

بالنسبة إلى البيانات من نوع السلسلة، يجب الإشارة إلى البيانات الإحصائية على أنّها سمة في تقرير مخصّص. بالنسبة إلى أنواع البيانات الرقمية (عدد صحيح/عدد عائم/طويل/مزدوج)، أشِر إلى البيانات الإحصائية في تقرير مخصّص إما كسمة أو مقياس. اطّلِع على إدارة التقارير المخصّصة لمزيد من المعلومات.

لا يمكن حذف قيمة type إلا إذا كانت السمة ref تشير إلى متغيّر تدفق Apigee محدَّد مسبقًا أو تم تحديد النوع في حمولة XML الخاصة بسياسة "استخراج المتغيّرات".

سلسلة إجراء اختياري

مرجع الخطأ

يصف هذا القسم رسائل الخطأ ومتغيّرات التدفق التي يتم ضبطها عندما تؤدي هذه السياسة إلى حدوث خطأ. من المهم معرفة هذه المعلومات في حال تطوير قواعد خطأ للخادم الوكيل. لمزيد من المعلومات، يُرجى الاطّلاع على المعلومات التي تحتاج إلى معرفتها عن الأخطاء المتعلقة بالسياسات والتعامل مع الأخطاء.

أخطاء وقت التشغيل

غير مسموح بأي رسائل

أخطاء النشر

اسم الخطأ السبب إصلاح
UnsupportedDatatype إذا لم يكن نوع المتغيّر الذي حدّدته السمة ref في العنصر <Statistic> في سياسة مُجمّع الإحصاءات غير متاح، سيتعذّر نشر الخادم الوكيل لواجهة برمجة التطبيقات. وتشمل أنواع البيانات المتوافقة string وinteger وfloat وlong وdouble وboolean.
InvalidName إذا كان الاسم المستخدَم للإشارة إلى البيانات التي تم جمعها للمتغيّر المحدّد ضمن عنصر <Statistic> في سياسة برنامج "إحصاءات الإحصاءات" يتعارض مع متغيّر من تحديد النظام، سيتعذّر نشر الخادم الوكيل لواجهة برمجة التطبيقات. بعض المتغيّرات المعروفة عن النظام هي organization وenvironment.
DatatypeMissing إذا لم يتوفّر نوع المتغيّر المحدّد في السمة ref في العنصر <Statistic> لسياسة سياسة "جامع الإحصاءات"، سيتعذّر نشر الخادم الوكيل لواجهة برمجة التطبيقات.

متغيّرات الخطأ

غير مسموح بأي رسائل

المخطّط

يتم تحديد كل نوع سياسة من خلال مخطّط XML (.xsd). تتوفّر مخطّطات السياسات كمرجع على GitHub.

مواضيع ذات صلة

يمكنك الاطّلاع على ما يلي للحصول على مزيد من المعلومات: