تحديد المشاكل وحلّها في ما يتعلّق بنشر سياسة جامع الإحصاءات

أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
info

UnsupportedDatatype

رسالة الخطأ

يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات من خلال واجهة مستخدم Edge أو واجهة برمجة تطبيقات إدارة Edge، وتظهر رسالة الخطأ التالية:

Error Deploying Revision [revision_number]
StatisticsCollection [datatype]: Datatype Revision:[revision_number];APIProxy:[api_proxy];Organization:[org_name];Environment:[env_name] is unsupported . Context [context].

مثال على رسالة خطأ

Error Saving Revision 1
StatisticsCollection char: Datatype Revision:1;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is unsupported . Context {2}.

لقطة شاشة كمثال

السبب

إذا كان نوع المتغيّر المحدّد بواسطة السمة ref في العنصر <Statistic> من سياسة "أداة جمع الإحصاءات" غير متوافق، سيتعذّر نشر خادم وكيل واجهة برمجة التطبيقات.

أنواع البيانات المتوافقة هي string وinteger وfloat وlong وdouble وboolean.

على سبيل المثال، إذا تم تحديد نوع المتغير على أنّه char في العنصر <Statistic> من سياسة "أداة جمع الإحصاءات"، سيتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات.

التشخيص

  1. حدِّد سياسة "أداة جمع الإحصاءات" في خادم وكيل واجهة برمجة التطبيقات المحدّد الذي حدث فيه الخطأ.
  2. تحديد نوع البيانات غير المتوافق المستخدَم في سياسة "أداة جمع الإحصاءات" يمكنك العثور على هذه المعلومات من رسالة الخطأ. على سبيل المثال، في الخطأ التالي، يكون نوع البيانات غير المتوافق هو char:

    StatisticsCollection char: Datatype Revision:1;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is unsupported . Context {2}.
    
  3. تأكَّد من أنّ سمة النوع المستخدَمة في سياسة "أداة جمع الإحصاءات" التي تعذّر تنفيذها تتطابق مع نوع البيانات المحدّد في رسالة الخطأ (الخطوة 2 أعلاه). على سبيل المثال، تحدّد السياسة التالية نوع البيانات على أنّه char، وهو ما يتطابق مع ما ورد في رسالة الخطأ:

    <StatisticsCollector async="false" continueOnError="false" enabled="true" name="Statistics-Collector-1">
      <DisplayName>Statistics Collector 1</DisplayName>
      <Statistics>
          <Statistic name="statName" ref="varName" type="char">defaultStatValue</Statistic>
      </Statistics>
    </StatisticsCollector>
    
  4. إذا كانت سمة النوع ليست من نوع بيانات متوافق، سيكون ذلك هو سبب الخطأ.

    في مثال سياسة "أداة جمع الإحصاءات" الموضّح أعلاه، تذكَّر أنّ السمة type تم ضبطها على char، وهي غير متوافقة. لذلك، يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات ويظهر الخطأ التالي:

    StatisticsCollection char: Datatype Revision:1;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is unsupported . Context {2}.
    

الدقة

تأكَّد من أنّ نوع البيانات للمتغيرات المحدّدة بواسطة سمات ref في عناصر <Statistic> من سياسة "أداة جمع الإحصاءات" متوافق وصالح. على سبيل المثال:

<StatisticsCollector async="false" continueOnError="false" enabled="true" name="Statistics-Collector-1">
    <DisplayName>Statistics Collector 1</DisplayName>
    <Statistics>
        <Statistic name="statName" ref="varName" type="string">defaultStatValue</Statistic>
    </Statistics>
</StatisticsCollector>

InvalidName

رسالة الخطأ

يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات من خلال واجهة مستخدم Edge أو واجهة برمجة تطبيقات إدارة Edge، وتظهر رسالة الخطأ التالية:

Error Deploying Revision [revision_number]
StatisticsCollection: Name: [name] conflicts with system defined variables. Context policy: [policy_name]

مثال على رسالة خطأ

Error Saving Revision 1
StatisticsCollection: Name: organization conflicts with system defined variables. Context policy: StatCollector.

لقطة شاشة كمثال

السبب

إذا كان الاسم المستخدَم للإشارة إلى البيانات التي تم جمعها للمتغيّر المحدّد ضمن العنصر <Statistic> من سياسة "أداة جمع الإحصاءات" يتعارض مع متغيّر محدّد في النظام، سيتعذّر نشر خادم وكيل واجهة برمجة التطبيقات.

بعض المتغيرات المعروفة التي يحددها النظام هي organization وenvironment.

على سبيل المثال، إذا تم تحديد سمة الاسم على النحو organization في العنصر <Statistic> من سياسة "أداة جمع الإحصاءات"، سيتعذّر نشر خادم وكيل واجهة برمجة التطبيقات.

التشخيص

  1. حدِّد سياسة "أداة جمع الإحصاءات" التي حدث فيها الخطأ واسم العنصر <Statistic> الذي يتعارض مع متغيّر محدّد من قِبل النظام. يمكنك العثور على كلتا القيمتين في رسالة الخطأ. على سبيل المثال، في الخطأ التالي، يكون اسم السياسة هو StatCollector، واسم العنصر <Statistic> الذي يتعارض مع المتغير المحدّد في النظام هو organization:

    StatisticsCollection: Name: organization conflicts with system defined variables. Context policy: StatCollector.
    
  2. تأكَّد من أنّ اسم العنصر <Statistic> المستخدَم في ملف XML لسياسة "أداة جمع الإحصاءات" الذي تعذّر تنفيذه يتطابق مع الاسم المحدّد في رسالة الخطأ (الخطوة 1 أعلاه). على سبيل المثال، تحدّد السياسة التالية الاسم على أنّه organization في العنصر <Statistic>، وهو ما يتطابق مع ما يظهر في رسالة الخطأ:

    <StatisticsCollector name="StatCollector">
      <Statistics>
          <Statistic name="organization" ref="organization" type="string">myorg</Statistic>
          <Statistic name="traffic" ref="traffic" type="string">999999</Statistic>
      </Statistics>
    </StatisticsCollector>
    
  3. راجِع تعريف كل عنصر من عناصر <Statistic>. إذا كان هناك أي عنصر <Statistic> تتعارض فيه السمة name مع متغيّر نظام، سيكون ذلك هو سبب الخطأ.

في مثال سياسة "جامع الإحصاءات" الموضّح أعلاه، تذكَّر أنّ سمة الاسم <Statistic> المستخدَمة هي organization، وهو اسم متغيّر نظام. وبالتالي، يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات بسبب الخطأ:

StatisticsCollection: Name: organization conflicts with system defined variables. Context policy: StatCollector.

الدقة

تأكَّد من أنّ اسم العنصر <Statistic> المستخدَم للإشارة إلى البيانات التي تم جمعها للمتغيّر المحدّد المعرَّف ضمن العنصر <Statistic> في سياسة "أداة جمع الإحصاءات" ليس هو نفسه المتغيّرات المحدَّدة في النظام. على سبيل المثال:

<StatisticsCollector name="StatCollector">
    <Statistics>
        <Statistic name="org" ref="org" type="string">myorg</Statistic>
        <Statistic name="traffic" ref="traffic" type="string">999999</Statistic>
    </Statistics>
</StatisticsCollector>

DatatypeMissing

رسالة الخطأ

يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات من خلال واجهة مستخدم Edge أو واجهة برمجة تطبيقات إدارة Edge، وتظهر رسالة الخطأ التالية:

Error Deploying Revision [revision_number]
StatisticsCollection [ref]: Datatype of Revision:[revision_number];APIProxy:[api_proxy];Organization:[org_name];Environment:[env_name] is missing . Context [context].

مثال على رسالة خطأ

Error Deploying Revision 2 to test
StatisticsCollection product.id: Datatype of Revision:2;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is missing. Context {2}.

لقطة شاشة كمثال

السبب

إذا كان نوع المتغيّر المحدّد بواسطة السمة ref في العنصر <Statistic> من سياسة "أداة جمع الإحصاءات" غير متوفّر، سيتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات.

التشخيص

  1. حدِّد سياسة "أداة جمع الإحصاءات" في خادم وكيل واجهة برمجة التطبيقات المحدّد الذي حدث فيه الخطأ.
  2. افحص تعريف كل عنصر من عناصر <Statistic> في ملف XML لسياسة "أداة جمع الإحصاءات" الذي تعذّر تحميله. إذا كانت هناك أي عناصر <Statistic> لا تتضمّن السمة type، سيكون ذلك هو سبب الخطأ.

في ما يلي مثال على سياسة "أداة جمع الإحصاءات":

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

في مثال سياسة "أداة جمع الإحصاءات" الموضّح أعلاه، لاحظ أنّ سمة النوع غير متوفّرة لكل من العنصرَين <Statistic>. وبالتالي، يتعذّر نشر خادم وكيل لواجهة برمجة التطبيقات.

الدقة

تأكَّد من أنّ سمة النوع للمتغيّر المحدّد بواسطة السمة ref في العنصر <Statistic> من سياسة "أداة جمع الإحصاءات" يتم تحديدها دائمًا وأنّها من نوع البيانات المتوافق.

أنواع البيانات المتوافقة هي string وinteger وfloat وlong وdouble وboolean.

على سبيل المثال:

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