Kebijakan StatisticsCollector

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

Apa

Memungkinkan Anda mengumpulkan statistik untuk data dalam pesan, seperti ID produk, harga, REST {i>action<i}, {i>client<i} dan URL target, dan panjang pesan. Datanya dapat berasal dari variabel aliran ditentukan sebelumnya oleh Apigee atau variabel kustom yang Anda tentukan.

Data statistik diteruskan ke server analitik, yang menganalisis statistik dan menghasilkan laporan. Anda dapat melihat laporan menggunakan UI pengelolaan Edge atau Edge API.

Contoh

Contoh dasar

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

Dalam contoh ini, Anda mengumpulkan informasi statistik tentang dua variabel kustom: product.id dan product.price. Pada setiap permintaan, Kebijakan Statistics Collector menuliskan nilai kedua variabel ini ke analisis server tertentu.

Contoh ini juga menetapkan nilai default opsional untuk setiap variabel, dengan nilai default nilai product.id adalah 999999 dan atribut product.price default adalah 0. Jika variabel tidak ditentukan dan Anda tidak menetapkan nilai default, maka tidak ada data untuk variabel tersebut. Jika Anda menentukan nilai default, nilai defaultnya adalah dicatat ketika variabel tidak terdefinisi.

Setelah mengumpulkan data statistik, Anda dapat menggunakan API atau UI pengelolaan Edge untuk mengambil statistik. Saat mengambil statistik, Anda mereferensikan data yang dikumpulkan untuk variabel tersebut sebagai productID dan price.

Mengakses statistik

Dalam contoh ini, Anda menggunakan Edge management API untuk melihat data statistik untuk koleksi yang disebut productID. Permintaan ini membangun laporan kustom untuk ID produk berdasarkan jumlah pesan yang dikirim untuk setiap ID produk mereka. Ganti nama organisasi Anda untuk variabel {org_name}, dan mengganti email dan sandi akun Anda di Apigee Edge dengan email:password.

Tetapkan parameter timeRange untuk menyertakan interval waktu saat data Anda kumpulkan. Secara default, data yang sudah lebih dari enam bulan sejak tanggal saat ini tidak dapat diakses. Jika Anda ingin mengakses data yang lebih lama dari enam bulan, hubungi Dukungan 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

Dalam respons, name berisi ID produk dan nilai yang menunjukkan jumlah permintaan untuk setiap hari:

{
  "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"
  }
}

Mengekstrak data untuk koleksi

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

Kebijakan Statistics Collector mengharuskan data yang dikumpulkan disimpan dalam variabel. Variabel ini dapat ditetapkan sebelumnya oleh Apigee, atau variabel kustom yang Anda tentukan.

Dalam contoh ini, Anda menggunakan kebijakan Ekstrak Variabel untuk mengekstrak data dari payload XML yang berisi informasi cuaca. Kebijakan ini:

  • Mengekstrak nama kota dan menulisnya ke variabel bernama weather.location
  • Mengekstrak kondisi saat ini dan menulisnya ke variabel bernama weather.condition

Lalu, Anda dapat menggunakan kebijakan Statistics Collector untuk mengumpulkan informasi tentang variabel, seperti yang ditunjukkan di bawah ini:

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

Untuk tutorial lengkap yang menunjukkan cara mengekstrak data dari payload XML untuk Kebijakan Statistics Collector, lihat Analyze API konten pesan menggunakan analisis kustom.


Tentang kebijakan Statistics Collector

Saat dijalankan, kebijakan Statistics Collector mencatat nilai saat ini dari satu atau beberapa variabel. Variabel ini dapat berupa variabel alur yang telah ditetapkan sebelumnya oleh Apigee atau variabel kustom yang yang Anda tentukan. Data ini ditulis ke server analisis Edge.

Untuk mengakses data statistik yang dikumpulkan oleh kebijakan, Anda menggunakan Edge API atau Edge UI manajemen proyek. Misalnya, Anda dapat menggunakan UI pengelolaan Edge untuk membuat laporan kustom yang menunjukkan data yang dikumpulkan dalam berbagai format.

Untuk tutorial lengkap cara menggunakan kebijakan Statistics Collector, lihat Analyze API konten pesan menggunakan analisis kustom.

Lokasi kebijakan

Anda dapat menempatkan kebijakan Statistics Collector dalam alur permintaan atau respons API {i>proxy<i}. Namun, jika Anda menempatkan beberapa kebijakan Statistics Collector di {i>proxy<i}, maka kebijakan satu untuk mengeksekusi menentukan data yang ditulis ke server analitik dan data yang ditulis oleh kebijakan Statistics Collector sebelumnya hilang.

Satu skenario di mana Anda mungkin memiliki beberapa kebijakan Statistics Collector di proxy API adalah ketika Anda memiliki satu kode di alur permintaan atau respons, dan satu lagi di pengendali fault. Jika kesalahan terjadi di proxy API, lalu Statistics Collector di pengendali kesalahan menentukan data kumpulkan. Anda dapat menggunakan {i>Statistics Collector<i} itu untuk mencatat informasi tentang kesalahannya, atau untuk mencatat informasi lain apa pun yang Anda anggap perlu. Statistics Collector salah menentukan data yang dikumpulkan terlepas dari apakah Statistics Collector atau tidak dalam permintaan/respons sudah dijalankan.

Untuk mengetahui informasi selengkapnya, lihat Menangani kesalahan.

Referensi elemen

Referensi elemen menjelaskan elemen dan atribut Statistics Collector lebih lanjut.

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

&lt;StatisticsCollector&gt; atribut

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

Tabel berikut menjelaskan atribut yang umum untuk semua elemen induk kebijakan:

Atribut Deskripsi Default Ketersediaan
name

Nama internal kebijakan. Nilai atribut name dapat berisi huruf, angka, spasi, tanda hubung, garis bawah, dan titik. Nilai ini tidak boleh melebihi 255 karakter.

Secara opsional, gunakan elemen <DisplayName> untuk memberi label kebijakan di editor proxy UI pengelolaan dengan nama natural language yang berbeda.

T/A Wajib
continueOnError

Tetapkan ke false untuk menampilkan error saat kebijakan gagal. Diharapkan untuk sebagian besar kebijakan.

Setel ke true agar eksekusi alur dapat dilanjutkan bahkan setelah kebijakan gagal.

salah Opsional
enabled

Setel ke true untuk menerapkan kebijakan.

Setel ke false untuk menonaktifkan kebijakan. Kebijakan ini tidak akan ditegakkan meskipun tetap terikat pada alur.

true Opsional
async

Atribut ini tidak digunakan lagi.

salah Tidak digunakan lagi

&lt;DisplayName&gt; elemen

Gunakan selain atribut name untuk memberi label kebijakan di editor proxy UI dengan nama natural language yang berbeda.

<DisplayName>Policy Display Name</DisplayName>
Default

T/A

Jika Anda menghapus elemen ini, nilai atribut name kebijakan akan menjadi data

Ketersediaan Opsional
Jenis String

&lt;Statistics&gt;/&lt;Statistic&gt; elemen

<Statistics>
    <Statistic name="statName" ref="varName" type="refDataType">defaultStatValue</Statistic>
</Statistics>
Atribut Deskripsi Default Ketersediaan
nama

Nama yang digunakan untuk mereferensikan data yang dikumpulkan untuk variabel yang ditentukan. Saat melihat data analisis, gunakan nama ini untuk mereferensikan data yang dikumpulkan tentang variabel ditentukan oleh ref .

Jika variabel yang ditentukan oleh ref tidak ditentukan pada permintaan atau maka defaultStatValue akan menentukan nilai yang dikumpulkan untuk variabel tersebut. Jika Anda menghilangkan nilai default, tidak ada data yang akan dikumpulkan untuk variabel ketika variabel tidak terdefinisi.

Batasan penamaan

Batasan penamaan berikut berlaku untuk variabel analisis kustom:

T/A Wajib
referensi

Variabel alur yang statistiknya dikumpulkan. Variabel ini dapat berupa alur variabel yang telah ditentukan sebelumnya oleh Apigee atau variabel kustom yang Anda tentukan di proxy API.

Atribut ref sering kali mereferensikan variabel khusus yang ditentukan oleh Ekstrak Variabel lebih lanjut. Lihat Mengekstrak Variabel kebijakan untuk informasi lebih lanjut.

T/A Wajib
jenis

Menentukan jenis data variabel yang ditentukan oleh atribut ref. Nilai yang valid adalah: string/integer/float/long/double/boolean.

Untuk data string jenis, referensikan data statistik sebagai Dimensi dalam laporan kustom. Untuk jenis data numerik (bilangan bulat/float/long/ganda), rujuk data statistik dalam laporan kustom sebagai Dimensi atau Metrik. Lihat Mengelola laporan kustom untuk mengetahui informasi selengkapnya.

Nilai type dapat dihilangkan hanya jika ref merujuk pada item standar Variabel alur Apigee atau jenisnya dideklarasikan dalam payload XML dari Variabel Ekstrak lebih lanjut.

string Opsional

Referensi error

Bagian ini menjelaskan pesan error dan variabel alur yang ditetapkan saat kebijakan ini memicu error. Informasi ini penting untuk diketahui apakah Anda sedang mengembangkan aturan fault untuk proxy. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani kesalahan.

Error runtime

Tidak ada.

Error saat deployment

Nama error Penyebab Perbaiki
UnsupportedDatatype Jika jenis variabel yang ditentukan oleh atribut ref dalam elemen <Statistic> dalam kebijakan Statistics Collector tidak didukung, deployment proxy API akan gagal. Jenis data yang didukung adalah string, integer, float, long, double, dan boolean.
InvalidName Jika nama yang digunakan untuk merujuk data yang dikumpulkan untuk variabel tertentu yang ditentukan dalam elemen <Statistic> pada kebijakan Kolektor Statistik bertentangan dengan variabel yang ditentukan sistem, deployment proxy API akan gagal. Beberapa variabel buatan sistem yang diketahui adalah organization dan environment.
DatatypeMissing Jika jenis variabel yang ditentukan oleh atribut ref dalam elemen <Statistic> pada kebijakan Statistics Collector tidak ada, deployment proxy API akan gagal.

Variabel kesalahan

Tidak ada.

Skema

Setiap jenis kebijakan ditentukan oleh skema XML (.xsd). Sebagai referensi, skema kebijakan tersedia di GitHub.

Topik terkait

Untuk informasi selengkapnya, lihat: