Pemecahan masalah deployment kebijakan Kolektor Statistik

Anda sedang melihat dokumentasi Apigee Edge.
Buka Dokumentasi Apigee X.
info

ini.

UnsupportedDatatype

Pesan error

Penyebaran proxy API melalui Edge UI atau Edge API pengelolaan gagal dengan pesan kesalahan ini:

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

Contoh pesan error

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

Contoh screenshot

Penyebab

Jika jenis variabel yang ditentukan oleh atribut ref di elemen <Statistic> kebijakan Statistics Collector tidak didukung, deployment proxy API akan gagal.

Jenis data yang didukung adalah string, integer, float, long, double, dan boolean.

Misalnya, jika jenis variabel ditetapkan sebagai char dalam elemen <Statistic> kebijakan Statistics Collector, deployment proxy API akan gagal.

Diagnosis

  1. Identifikasi kebijakan Statistics Collector di Proxy API tertentu tempat kegagalan terjadi.
  2. Identifikasi jenis data yang tidak didukung yang digunakan dalam kebijakan Statistics Collector. Anda dapat menemukan informasi ini dari pesan error. Misalnya, dalam error berikut, jenis data yang tidak didukung adalah char:

    StatisticsCollection char: Datatype Revision:1;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is unsupported . Context {2}.
    
  3. Pastikan atribut jenis yang digunakan dalam kebijakan Statistics Collector yang gagal cocok dengan jenis data yang diidentifikasi dalam pesan error (langkah #2 di atas). Misalnya, kebijakan berikut menentukan jenis data sebagai char, yang cocok dengan isi pesan error:

    <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. Jika atribut jenis bukan merupakan jenis data yang didukung, maka itulah penyebab error.

    Pada contoh kebijakan Statistics Collector yang ditampilkan di atas, ingat bahwa atribut type disetel sebagai char, yang tidak didukung. Oleh karena itu, deployment Proxy API gagal dengan error:

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

Resolusi

Pastikan jenis data variabel yang ditentukan oleh atribut ref di elemen <Statistic> kebijakan Statistics Collector didukung dan valid. Contoh:

<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

Pesan error

Penyebaran proxy API melalui Edge UI atau Edge API pengelolaan gagal dengan pesan kesalahan ini:

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

Contoh pesan error

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

Contoh screenshot

Penyebab

Jika nama yang digunakan untuk mereferensikan data yang dikumpulkan untuk variabel yang ditentukan dalam elemen <Statistic> kebijakan Statistics Collector bertentangan dengan variabel buatan sistem, deployment proxy API akan gagal.

Beberapa variabel buatan sistem yang dikenal adalah organization dan environment.

Misalnya, jika atribut nama ditetapkan sebagai organization dalam elemen <Statistic> kebijakan Statistics Collector, deployment proxy API akan gagal.

Diagnosis

  1. Identifikasi kebijakan Statistics Collector tempat error terjadi dan nama elemen <Statistic> yang bertentangan dengan variabel yang ditentukan sistem. Anda dapat menemukan kedua item ini dalam pesan error. Misalnya, dalam error berikut, nama kebijakan adalah StatCollector, nama elemen <Statistic> yang bertentangan dengan variabel yang ditentukan sistem adalah organization:

    StatisticsCollection: Name: organization conflicts with system defined variables. Context policy: StatCollector.
    
  2. Pastikan nama elemen <Statistic> yang digunakan dalam XML kebijakan Statistics Collector yang gagal cocok dengan nama yang diidentifikasi dalam pesan error (langkah #1 di atas). Misalnya, kebijakan berikut menetapkan nama sebagai organization dalam elemen <Statistic>, yang cocok dengan isi pesan error:

    <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. Periksa definisi setiap elemen <Statistic>. Jika ada elemen <Statistic> yang atribut name bertentangan dengan variabel sistem, maka hal tersebut merupakan penyebab error.

Pada contoh kebijakan Statistics Collector yang ditampilkan di atas, ingat bahwa atribut nama <Statistic> yang digunakan adalah organization, yang kebetulan merupakan nama variabel sistem. Oleh karena itu, deployment Proxy API gagal dengan error:

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

Resolusi

Pastikan nama elemen <Statistic> yang digunakan untuk mereferensikan data yang dikumpulkan untuk variabel yang ditentukan dalam elemen <Statistic> di kebijakan Statistics Collector tidak sama dengan variabel buatan sistem. Contoh:

<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

Pesan error

Penyebaran proxy API melalui Edge UI atau Edge API pengelolaan gagal dengan pesan kesalahan ini:

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].

Contoh pesan error

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

Contoh screenshot

Penyebab

Jika jenis variabel yang ditentukan oleh atribut ref di elemen <Statistic> kebijakan Statistics Collector tidak ada, deployment proxy API akan gagal.

Diagnosis

  1. Identifikasi kebijakan Statistics Collector di Proxy API tertentu tempat kegagalan terjadi.
  2. Periksa definisi setiap elemen <Statistic> dalam XML kebijakan Statistics Collector yang gagal. Jika ada elemen <Statistic> yang atribut jenisnya tidak ada, berarti hal tersebut merupakan penyebab error.

Berikut ini contoh kebijakan Statistics Collector:

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

Pada contoh kebijakan Statistics Collector yang ditampilkan di atas, perhatikan bahwa atribut jenis tidak ada untuk kedua elemen <Statistic>. Oleh karena itu, deployment Proxy API akan gagal.

Resolusi

Pastikan atribut jenis variabel yang ditentukan oleh atribut ref di elemen <Statistic> kebijakan Statistics Collector selalu ditentukan dan merupakan jenis data yang didukung.

Jenis data yang didukung adalah string, integer, float, long, double, dan boolean.

Contoh:

<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>