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 dati API abituali raccolti da Apigee, puoi raccogliere anche dati personalizzati utilizzando il criterio DataCapture. Sono necessari due passaggi principali, descritti nelle sezioni seguenti:

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

Creare una risorsa REST del raccoglitore dati

Per utilizzare le norme DataCapture, devi prima creare una risorsa REST Data Collector. Per farlo, 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.

Specificare i dati da raccogliere

Puoi specificare i dati da raccogliere utilizzando l'elemento <Collect> del criterio DataCapture. Esistono vari modi per farlo, come mostrato nella sezione Esempi nella pagina di riferimento DataCapture. Un modo è specificare una variabile di flusso, che memorizza i dati trasmessi nelle richieste e nelle risposte API. Ad esempio, puoi raccogliere i dati che i clienti inseriscono 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 sarebbe message.formparam.payment_amount.values.

Il seguente codice 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.

Creare un report personalizzato dai dati raccolti con DataCapture

Una volta configurata la raccolta dei dati con il criterio DataCapture, puoi utilizzare i dati per creare un report personalizzato seguendo la procedura descritta in Aggiungere un report personalizzato. Per farlo, quando selezioni una metrica per il report, come mostrato nel passaggio 4 della procedura, scegli la variabile con lo stesso nome della risorsa REST Data Collector che hai creato per DataCapture, ad esempio dc_my_custom_data.

Puoi anche utilizzare la stessa variabile come dimensione in un report personalizzato. Poiché le dimensioni raggruppano 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.