Raccolta di dati personalizzati con il criterio DataCapture

Questa pagina si applica ad Apigee e Apigee hybrid.

Visualizza la documentazione di Apigee Edge.

Oltre ai soliti dati dell'API raccolti da Apigee, puoi anche raccogliere dati personalizzati utilizzando il criterio DataCapture. Sono necessari due passaggi principali, come descritto nelle sezioni seguenti:

  1. Crea una risorsa REST del raccoglitore dati.
  2. Specifica i dati che vuoi raccogliere utilizzando l'elemento <Collect> del criterio DataCapture.

Creare una risorsa REST di Data Collector

Per utilizzare il criterio DataCapture, devi prima creare una risorsa REST di Data Collector. A tale scopo, invia una richiesta API come la seguente:

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -X POST -H "content-type:application/json" \
  -d '
{
  "name": "dc_my_custom_data",
  "description": "Collects data for analysis.",
  "type": "STRING",
}' \
  "https://apigee.googleapis.com/v1/organizations/$PROJECT_ID/datacollectors"

Viene creata una risorsa denominata dc_my_custom_data, che puoi utilizzare con il criterio DataCapture.

Specifica i dati da raccogliere

Puoi specificare i dati da raccogliere utilizzando l'elemento <Collect> del criterio DataCapture. Esistono diversi modi per farlo, come mostrato nella sezione Esempi della pagina di riferimento di DataCapture. Un modo è specificare una variabile di flusso, che memorizza i dati passati nelle richieste e nelle risposte dell'API. Ad esempio, puoi raccogliere i dati inseriti dai clienti in un modulo di una pagina web utilizzando la variabile di flusso message.formparam.param_name.values, dove param_name è il nome di un parametro nel modulo. Supponiamo che il modulo abbia un parametro denominato payment_amount. La variabile di flusso corrispondente sarà message.formparam.payment_amount.values.

Il codice seguente specifica questa variabile tramite l'attributo ref dell'elemento <Collect>.

<DataCapture name="capturepayment">
    <Capture>
        <DataCollector>dc_my_custom_data</DataCollector>
        <Collect ref="message.form_param.payment_amount.values" >
    </Capture>
</DataCapture>

Con questa impostazione, i dati inseriti nel campo payment_amount del modulo verranno raccolti da DataCapture e archiviati in una variabile denominata dc_my_custom_data.

Creazione di un report personalizzato dai dati raccolti con DataCapture

Dopo aver configurato la raccolta dei dati con il criterio DataCapture, puoi utilizzare i dati per creare un report personalizzato seguendo la procedura descritta in Aggiunta di un report personalizzato. A questo scopo, quando selezioni una metrica per il report, come mostrato nel passaggio 4 della procedura, scegli la variabile che ha lo stesso nome della risorsa REST di Data Collector che hai creato per DataCapture, ad esempio dc_my_custom_data, come mostrato di seguito.

Aggiungi una metrica personalizzata per DataCapture.

Puoi anche utilizzare la stessa variabile come dimensione in un report personalizzato. Poiché le dimensioni agrupano i dati in base ai valori della variabile, in genere è preferibile che la variabile sia una stringa che assume solo un numero limitato di valori.