Endpoint metriche

Le metriche di osservabilità forniscono informazioni approfondite sulle statistiche di utilizzo, sulle tendenze della cronologia e sugli indicatori di prestazioni per varie funzioni di Adobe Experience Platform. L’ endpoint /metrics nel Observability Insights API consente di recuperare in modo programmatico i dati delle metriche per l’attività dell’organizzazione in Platform.

Introduzione

L'endpoint API utilizzato in questa guida fa parte dell' Observability Insights API. Prima di continuare, controlla la guida introduttiva per i collegamenti alla relativa documentazione, una guida per la lettura delle chiamate API di esempio in questo documento e informazioni importanti sulle intestazioni necessarie per effettuare correttamente le chiamate a qualsiasi API Experience Platform.

Recupera metriche di osservabilità

Esistono due metodi supportati per recuperare i dati delle metriche utilizzando l’API:

  • Versione 1: Specifica le metriche utilizzando i parametri di query.
  • Versione 2: Specifica e applica filtri alle metriche utilizzando un payload JSON.

Versione 1

Puoi recuperare i dati delle metriche effettuando una richiesta di GET all’ endpoint /metrics, specificando le metriche utilizzando i parametri di query.

Formato API

È necessario fornire almeno una metrica nel parametro metric . Altri parametri di query sono facoltativi per filtrare i risultati.

GET /metrics?metric={METRIC}
GET /metrics?metric={METRIC}&metric={METRIC_2}
GET /metrics?metric={METRIC}&id={ID}
GET /metrics?metric={METRIC}&dateRange={DATE_RANGE}
GET /metrics?metric={METRIC}&metric={METRIC_2}&id={ID}&dateRange={DATE_RANGE}
Parametro Descrizione
{METRIC} La metrica che desideri esporre. Quando combini più metriche in una singola chiamata, devi utilizzare una e commerciale (&) per separare le singole metriche. Ad esempio, metric={METRIC_1}&metric={METRIC_2}.
{ID} Identificatore di una particolare risorsa Platform di cui desideri esporre le metriche. Questo ID può essere facoltativo, obbligatorio o non applicabile a seconda delle metriche utilizzate. Per un elenco delle metriche disponibili, inclusi gli ID supportati (obbligatori e facoltativi) per ciascuna metrica, consulta l’ appendice .
{DATE_RANGE} L’intervallo di date per le metriche da esporre, in formato ISO 8601 (ad esempio, 2018-10-01T07:00:00.000Z/2018-10-09T07:00:00.000Z).

Richiesta

curl -X GET \
  https://platform.adobe.io/data/infrastructure/observability/insights/metrics?metric=timeseries.ingestion.dataset.size&metric=timeseries.ingestion.dataset.recordsuccess.count&id=5cf8ab4ec48aba145214abeb&dateRange=2018-10-01T07:00:00.000Z/2019-06-06T07:00:00.000Z \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {IMS_ORG}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}'

Risposta

Una risposta corretta restituisce un elenco di oggetti, ognuno contenente una marca temporale all’interno della dateRange fornita e i valori corrispondenti per le metriche specificate nel percorso della richiesta. Se nel percorso della richiesta è incluso il id di una risorsa Platform , i risultati verranno applicati solo a tale risorsa. Se id viene omesso, i risultati verranno applicati a tutte le risorse applicabili all’interno dell’organizzazione IMS.

{
  "id": "5cf8ab4ec48aba145214abeb",
  "imsOrgId": "{IMS_ORG}",
  "timeseries": {
    "granularity": "MONTH",
    "items": [
      {
        "timestamp": "2019-06-01T00:00:00Z",
        "metrics": {
          "timeseries.ingestion.dataset.recordsuccess.count": 1125,
          "timeseries.ingestion.dataset.size": 32320
        }
      },
      {
        "timestamp": "2019-05-01T00:00:00Z",
        "metrics": {
          "timeseries.ingestion.dataset.recordsuccess.count": 1003,
          "timeseries.ingestion.dataset.size": 31409
        }
      },
      {
        "timestamp": "2019-04-01T00:00:00Z",
        "metrics": {
          "timeseries.ingestion.dataset.recordsuccess.count": 740,
          "timeseries.ingestion.dataset.size": 25809
        }
      },
      {
        "timestamp": "2019-03-01T00:00:00Z",
        "metrics": {
          "timeseries.ingestion.dataset.recordsuccess.count": 740,
          "timeseries.ingestion.dataset.size": 25809
        }
      },
      {
        "timestamp": "2019-02-01T00:00:00Z",
        "metrics": {
          "timeseries.ingestion.dataset.recordsuccess.count": 390,
          "timeseries.ingestion.dataset.size": 16801
        }
      }
    ],
    "_page": null,
    "_links": null
  },
  "stats": {}
}

Versione 2

Puoi recuperare i dati delle metriche effettuando una richiesta POST all’endpoint /metrics, specificando le metriche da recuperare nel payload.

Formato API

POST /metrics

Richiesta

curl -X POST \
  https://platform.adobe.io/data/infrastructure/observability/insights/metrics \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {IMS_ORG}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -d '{
        "start": "2020-07-14T00:00:00.000Z",
        "end": "2020-07-22T00:00:00.000Z",
        "granularity": "day",
        "metrics": [
          {
            "name": "timeseries.ingestion.dataset.recordsuccess.count",
            "filters": [
              {
                "name": "dataSetId",
                "value": "5edcfb2fbb642119194c7d94|5eddb21420f516191b7a8dad",
                "groupBy": true
              }
            ],
            "aggregator": "sum",
            "downsample": "sum"
          },
          {
            "name": "timeseries.ingestion.dataset.dailysize",
            "filters": [
              {
                "name": "dataSetId",
                "value": "5eddb21420f516191b7a8dad",
                "groupBy": false
              }
            ],
            "aggregator": "sum",
            "downsample": "sum"
          }
        ]
      }'
Proprietà Descrizione
start La data/ora più recente da cui recuperare i dati delle metriche.
end Data/ora più recente da cui recuperare i dati delle metriche.
granularity Un campo facoltativo che indica l’intervallo di tempo per il quale dividere i dati delle metriche. Ad esempio, un valore di DAY restituisce metriche per ogni giorno compreso tra la data start e la data end, mentre un valore di MONTH raggrupperebbe i risultati delle metriche per mese. Quando si utilizza questo campo, è necessario fornire anche una proprietà downsample corrispondente per indicare la funzione di aggregazione tramite la quale raggruppare i dati.
metrics Matrice di oggetti, una per ogni metrica che si desidera recuperare.
name Nome di una metrica riconosciuta da Observability Insights. Per un elenco completo dei nomi delle metriche accettate, consulta l’ appendice .
filters Un campo facoltativo che consente di filtrare le metriche in base a set di dati specifici. Il campo è una matrice di oggetti (uno per ogni filtro), con ogni oggetto contenente le seguenti proprietà:
  • name: Il tipo di entità su cui filtrare le metriche. Attualmente, è supportato solo dataSets.
  • value: ID di uno o più set di dati. È possibile fornire più ID di set di dati come una singola stringa, con ciascun ID separato da caratteri a barre verticali (`
aggregator Specifica la funzione di aggregazione da utilizzare per raggruppare più record serie temporali in singoli risultati. Per informazioni dettagliate sugli aggregatori disponibili, consulta la documentazione OpenTSDB.
downsample Un campo facoltativo che consente di specificare una funzione di aggregazione per ridurre la frequenza di campionamento dei dati metrici ordinando i campi in intervalli (o "bucket"). L'intervallo per il downsampling è determinato dalla proprietà granularity . Per informazioni dettagliate sul sottocampionamento, consulta la documentazione OpenTSDB.

Risposta

Una risposta corretta restituisce i punti dati risultanti per le metriche e i filtri specificati nella richiesta.

{
  "metricResponses": [
    {
      "metric": "timeseries.ingestion.dataset.recordsuccess.count",
      "filters": [
        {
          "name": "dataSetId",
          "value": "5edcfb2fbb642119194c7d94|5eddb21420f516191b7a8dad",
          "groupBy": true
        }
      ],
      "datapoints": [
        {
          "groupBy": {
            "dataSetId": "5edcfb2fbb642119194c7d94"
          },
          "dps": {
            "2020-07-14T00:00:00Z": 44.0,
            "2020-07-15T00:00:00Z": 46.0,
            "2020-07-16T00:00:00Z": 36.0,
            "2020-07-17T00:00:00Z": 50.0,
            "2020-07-18T00:00:00Z": 38.0,
            "2020-07-19T00:00:00Z": 40.0,
            "2020-07-20T00:00:00Z": 42.0,
            "2020-07-21T00:00:00Z": 42.0,
            "2020-07-22T00:00:00Z": 50.0
          }
        },
        {
          "groupBy": {
            "dataSetId": "5eddb21420f516191b7a8dad"
          },
          "dps": {
            "2020-07-14T00:00:00Z": 44.0,
            "2020-07-15T00:00:00Z": 46.0,
            "2020-07-16T00:00:00Z": 36.0,
            "2020-07-17T00:00:00Z": 50.0,
            "2020-07-18T00:00:00Z": 38.0,
            "2020-07-19T00:00:00Z": 40.0,
            "2020-07-20T00:00:00Z": 42.0,
            "2020-07-21T00:00:00Z": 42.0,
            "2020-07-22T00:00:00Z": 50.0
          }
        }
      ],
      "granularity": "DAY"
    },
    {
      "metric": "timeseries.ingestion.dataset.dailysize",
      "filters": [
        {
          "name": "dataSetId",
          "value": "5eddb21420f516191b7a8dad",
          "groupBy": false
        }
      ],
      "datapoints": [
        {
          "groupBy": {},
          "dps": {
            "2020-07-14T00:00:00Z": 38455.0,
            "2020-07-15T00:00:00Z": 40213.0,
            "2020-07-16T00:00:00Z": 31476.0,
            "2020-07-17T00:00:00Z": 43705.0,
            "2020-07-18T00:00:00Z": 33227.0,
            "2020-07-19T00:00:00Z": 34977.0,
            "2020-07-20T00:00:00Z": 36735.0,
            "2020-07-21T00:00:00Z": 36737.0,
            "2020-07-22T00:00:00Z": 43715.0
          }
        }
      ],
      "granularity": "DAY"
    }
  ]
}
Proprietà Descrizione
metricResponses Matrice i cui oggetti rappresentano ciascuna delle metriche specificate nella richiesta. Ogni oggetto contiene informazioni sulla configurazione del filtro e sui dati della metrica restituiti.
metric Nome di una delle metriche fornite nella richiesta.
filters La configurazione del filtro per la metrica specificata.
datapoints Matrice i cui oggetti rappresentano i risultati della metrica e i filtri specificati. Il numero di oggetti nell’array dipende dalle opzioni di filtro fornite nella richiesta. Se non sono stati forniti filtri, la matrice conterrà solo un singolo oggetto che rappresenta tutti i set di dati.
groupBy Se nella proprietà filter di una metrica sono stati specificati più set di dati e l’opzione groupBy è stata impostata su true nella richiesta, questo oggetto conterrà l’ID del set di dati a cui si applica la proprietà dps corrispondente.

Se l'oggetto appare vuoto nella risposta, la dps proprietà corrispondente si applica a tutti i set di dati forniti nella filters matrice (o a tutti i set di dati in Platform se non sono stati forniti filtri).
dps I dati restituiti per la metrica, il filtro e l’intervallo di tempo specificato. Ogni chiave in questo oggetto rappresenta una marca temporale con un valore corrispondente per la metrica specificata. Il periodo di tempo tra ciascun punto di dati dipende dal valore granularity specificato nella richiesta.

Appendice

La sezione seguente contiene informazioni aggiuntive sull’utilizzo dell’endpoint /metrics.

Metriche disponibili

Nelle tabelle seguenti sono elencate tutte le metriche esposte da Observability Insights, suddivise per il servizio Platform . Ogni metrica include una descrizione e un parametro di query ID accettato.

NOTA

Tutti i parametri di query ID elencati sono facoltativi, se non diversamente specificato.

Data Ingestion

La tabella seguente delinea le metriche per Adobe Experience Platform Data Ingestion. Le metriche in grassetto trasmettono in streaming le metriche di acquisizione.

Metrica Approfondimenti Descrizione Parametro query ID
timeseries.ingestion.dataset.new.count Numero totale di set di dati creati. N/D
timeseries.ingestion.dataset.size Dimensione cumulativa di tutti i dati acquisiti per un set di dati per o per tutti i set di dati. ID set di dati
timeseries.ingestion.dataset.dailysize Dimensione dei dati acquisiti su base giornaliera per un set di dati o per tutti i set di dati. ID set di dati
timeseries.ingestion.dataset.batchfailed.count Numero di batch non riusciti per un set di dati o per tutti i set di dati. ID set di dati
timeseries.ingestion.dataset.batchsuccess.count Numero di batch acquisiti per un set di dati o per tutti i set di dati. ID set di dati
timeseries.ingestion.dataset.recordsuccess.count Numero di record acquisiti per un set di dati o per tutti i set di dati. ID set di dati
timeseries.data.collection.validation.total.messages.rate Numero totale di messaggi per un set di dati o per tutti i set di dati. ID set di dati
timeseries.data.collection.validation.valid.messages.rate Numero totale di messaggi validi per un set di dati o per tutti i set di dati. ID set di dati
timeseries.data.collection.validation.valid.messages.rate Numero totale di messaggi non validi per un set di dati o per tutti i set di dati. ID set di dati
timeseries.data.collection.validation.category.type.count Numero totale di messaggi "type" non validi per un set di dati o per tutti i set di dati. ID set di dati
timeseries.data.collection.validation.category.range.count Numero totale di messaggi "intervallo" non validi per un set di dati o per tutti i set di dati. ID set di dati
timeseries.data.collection.validation.category.format.count Numero totale di messaggi "format" non validi per un set di dati o per tutti i set di dati. ID set di dati
timeseries.data.collection.validation.category.pattern.count Numero totale di messaggi "pattern" non validi per un set di dati o per tutti i set di dati. ID set di dati
timeseries.data.collection.validation.category.presence.count Numero totale di messaggi "presenza" non validi per un set di dati o per tutti i set di dati. ID set di dati
timeseries.data.collection.validation.category.enum.count Numero totale di messaggi "enum" non validi per un set di dati o per tutti i set di dati. ID set di dati
timeseries.data.collection.validation.category.unsecret.count Numero totale di messaggi "non classificati" non validi per un set di dati o per tutti i set di dati. ID set di dati
timeseries.data.collection.validation.category.unknown.count Numero totale di messaggi "sconosciuti" non validi per un set di dati o per tutti i set di dati. ID set di dati
timeseries.data.collection.inlet.total.messages.receive Numero totale di messaggi ricevuti per un’entrata dati o per tutte le entrate dati. ID ingresso
timeseries.data.collection.inlet.total.messages.size.receive Dimensione totale dei dati ricevuti per un’entrata dati o per tutte le entrate dati. ID ingresso
timeseries.data.collection.inlet.success Numero totale di chiamate HTTP riuscite a una singola entrata dati o a tutte le entrate dati. ID ingresso
timeseries.data.collection.inlet.failed Numero totale di chiamate HTTP non riuscite a una singola entrata dati o a tutte le entrate dati. ID ingresso

Identity Service

La tabella seguente delinea le metriche per Adobe Experience Platform Identity Service.

Metrica Approfondimenti Descrizione Parametro query ID
timeseries.identity.dataset.recordsuccess.count Numero di record scritti nella propria origine dati da Identity Service per un set di dati o tutti i set di dati. ID set di dati
timeseries.identity.dataset.recordfailed.count Numero di record non riusciti da Identity Service, per un set di dati o per tutti i set di dati. ID set di dati
timeseries.identity.dataset.namespacecode.recordsuccess.count Numero di record Identity correttamente acquisiti per uno spazio dei nomi. ID dello spazio dei nomi (Obbligatorio)
timeseries.identity.dataset.namespacecode.recordfailed.count Numero di record di identità non riusciti da uno spazio dei nomi. ID dello spazio dei nomi (Obbligatorio)
timeseries.identity.dataset.namespacecode.recordskipped.count Numero di record di identità ignorati da uno spazio dei nomi. ID dello spazio dei nomi (Obbligatorio)
timeseries.identity.graph.imsorg.uniqueidentities.count Numero di identità univoche memorizzate nel grafico delle identità per la tua organizzazione IMS. N/D
timeseries.identity.graph.imsorg.namespacecode.uniqueidentities.count Numero di identità univoche memorizzate nel grafico delle identità per uno spazio dei nomi. ID dello spazio dei nomi (Obbligatorio)
timeseries.identity.graph.imsorg.numidgraphs.count Numero di identità univoche del grafico memorizzate nel grafico delle identità per la tua organizzazione IMS. N/D
timeseries.identity.graph.imsorg.graphstrength.uniqueidentities.count Numero di identità univoche memorizzate nel grafico delle identità per la tua organizzazione IMS per una particolare forza grafico ("sconosciuto", "debole" o "forte"). Forza del grafico (Obbligatorio)

Privacy Service

La tabella seguente delinea le metriche per Adobe Experience Platform Privacy Service.

Metrica Approfondimenti Descrizione Parametro query ID
timeseries.gdpr.jobs.totaljobs.count Numero totale di lavori creati dal RGPD. ENV (Obbligatorio)
timeseries.gdpr.jobs.completedjobs.count Numero totale di processi completati dal RGPD. ENV (Obbligatorio)
timeseries.gdpr.jobs.errorjobs.count Numero totale di processi di errore dal RGPD. ENV (Obbligatorio)

Query Service

La tabella seguente delinea le metriche per Adobe Experience Platform Query Service.

Metrica Approfondimenti Descrizione Parametro query ID
timeseries.queryservice.query.scheduleonce.count Numero totale di query pianificate non ricorrenti. N/D
timeseries.queryservice.query.scheduledrecurring.count Numero totale di query pianificate ricorrenti. N/D
timeseries.queryservice.query.batchquery.count Numero totale di query batch eseguite. N/D
timeseries.queryservice.query.scheduledquery.count Numero totale di query pianificate eseguite. N/D
timeseries.queryservice.query.interactivequery.count Numero totale di query interattive eseguite. N/D
timeseries.queryservice.query.batchfrompsqlquery.count Numero totale di query batch eseguite da PSQL. N/D

Real-time Customer Profile

La tabella seguente delinea le metriche per Real-time Customer Profile.

Metrica Approfondimenti Descrizione Parametro query ID
timeseries.profiles.dataset.recordread.count Numero di record letti da Data Lake da Profile, per un set di dati o per tutti i set di dati. ID set di dati
timeseries.profiles.dataset.recordsuccess.count Numero di record scritti nella relativa origine dati da Profile, per un set di dati o per tutti i set di dati. ID set di dati
timeseries.profiles.dataset.recordfailed.count Numero di record non riusciti da Profile, per un set di dati o per tutti i set di dati. ID set di dati
timeseries.profiles.dataset.batchsuccess.count Numero di batch Profile acquisiti per un set di dati o per tutti i set di dati. ID set di dati
timeseries.profiles.dataset.batchfailed.count Numero di batch Profile non riusciti per un set di dati o per tutti i set di dati. ID set di dati
platform.ups.ingest.streaming.request.m1_rate Frequenza richieste in arrivo. Organizzazione IMS (Obbligatoria)
platform.ups.ingest.streaming.access.put.success.m1_rate Tasso di successo dell’acquisizione. Organizzazione IMS (Obbligatoria)
platform.ups.ingest.streaming.records.created.m15_rate Frequenza dei nuovi record acquisiti per un set di dati. ID set di dati (Richiesto)
platform.ups.ingest.streaming.request.error.created.outOfOrder.m1_rate Frequenza dei record con marca temporale fuori ordine per creare una richiesta per un set di dati. ID set di dati (Richiesto)
platform.ups.profile-commons.ingest.streaming.dataSet.record.created.timestamp Timestamp dell’ultima richiesta di creazione record per un set di dati. ID set di dati (Richiesto)
platform.ups.ingest.streaming.request.error.updated.outOfOrder.m1_rate Frequenza dei record con marca temporale fuori ordine per la richiesta di aggiornamento di un set di dati. ID set di dati (Richiesto)
platform.ups.profile-commons.ingest.streaming.dataSet.record.updated.timestamp Timestamp dell’ultima richiesta di record di aggiornamento per un set di dati. ID set di dati (Richiesto)
platform.ups.ingest.streaming.record.size.m1_rate Dimensione media del record. Organizzazione IMS (Obbligatoria)
platform.ups.ingest.streaming.records.updated.m15_rate Frequenza di richieste di aggiornamento per i record acquisiti per un set di dati. ID set di dati (Richiesto)

Messaggi di errore

Le risposte dall’endpoint /metrics possono restituire messaggi di errore in determinate condizioni. Questi messaggi di errore vengono restituiti nel seguente formato:

{
    "type": "http://ns.adobe.com/aep/errors/INSGHT-1000-400",
    "title": "Bad Request - Start date cannot be after end date.",
    "status": 400,
    "report": {
        "tenantInfo": {
            "sandboxName": "prod",
            "sandboxId": "49f58060-5d47-34rd-aawf-a5384333ff12",
            "imsOrgId": "{IMS_ORG}"
        },
        "additionalContext": null
    },
    "error-chain": [
        {
            "serviceId": "INSGHT",
            "errorCode": "INSGHT-1000-400",
            "invokingServiceId": "INSGHT",
            "unixTimeStampMs": 1602095177129
        }
    ]
}
Proprietà Descrizione
title Una stringa contenente il messaggio di errore e il motivo potenziale per cui si è verificato.
report Contiene informazioni contestuali sull’errore, tra cui la sandbox e l’organizzazione IMS utilizzata nell’operazione che l’ha attivato.

Nella tabella seguente sono elencati i diversi codici di errore che possono essere restituiti dall’API:

Codice di errore Title Descrizione
INSGHT-1000-400 Payload della richiesta non valido Errore nel payload della richiesta. Assicurati di corrispondere esattamente alla formattazione del payload come mostrato sopra. Uno dei possibili motivi può attivare questo errore:
  • Campi obbligatori mancanti, ad esempio aggregator
  • Metriche non valide
  • La richiesta contiene un aggregatore non valido
  • Una data di inizio ha luogo dopo una data di fine
INSGHT-1001-400 Query metriche non riuscita Errore durante il tentativo di eseguire query sul database delle metriche a causa di una richiesta errata o dell'annullamento della parsabilità della query stessa. Assicurati che la richiesta sia formattata correttamente prima di riprovare.
INSGHT-1001-500 Query metriche non riuscita Errore durante il tentativo di eseguire query sul database delle metriche a causa di un errore del server. Riprovare la richiesta e, se il problema persiste, contattare il supporto Adobe.
INSGHT-1002-500 Errore del servizio Impossibile elaborare la richiesta a causa di un errore interno. Riprovare la richiesta e, se il problema persiste, contattare il supporto Adobe.
INSGHT-1003-401 Errore di convalida sandbox Impossibile elaborare la richiesta a causa di un errore di convalida sandbox. Assicurati che il nome della sandbox fornito nell’intestazione x-sandbox-name rappresenti una sandbox valida e abilitata per la tua organizzazione IMS prima di riprovare.

In questa pagina