Übersicht
Das Google Analytics Measurement Protocol für Google Analytics 4 gibt keine HTTP
-Fehlercodes zurück, auch wenn ein Ereignis fehlerhaft ist oder erforderliche Parameter nicht enthält. Prüfen Sie die Gültigkeit Ihrer Ereignisse auf dem Measurement Protocol Validierungsserver, bevor Sie sie in der Produktion bereitstellen.
Nachdem Sie sich vergewissert haben, dass Ihre Ereignisse korrekt strukturiert sind, sollten Sie Ihre Implementierung überprüfen, um sicherzustellen, dass Sie die richtigen Schlüssel verwenden.
Sie können den Validierungsserver entweder direkt aufrufen oder GA4 Event Builder verwenden. Mit GA4 Event Builder können Sie Ereignisse interaktiv erstellen und mit dem Measurement Protocol Validierungsserver validieren.
In diesem Leitfaden wird beschrieben, wie Ereignisse an das Measurement Protocol für Google Analytics 4-Validierungsserver gesendet und die Antwort interpretiert werden.
Ereignisse zur Überprüfung senden
Der einzige Unterschied in der Anfrage für Ereignisse, die an das Measurement Protocol und den Measurement Protocol Validation Server gesendet werden, ist die URL.
Server | URL |
---|---|
Measurement Protocol | /mp/collect |
Measurement Protocol-Validierungsserver | /debug/mp/collect |
Alle anderen Anfragefelder sind identisch. Ausführliche Informationen zum Erstellen einer gültigen Anfrage finden Sie in der Protokollreferenz.
Der folgende Code zeigt ein ungültiges Ereignis, das an den Measurement Protocol Validierungsserver gesendet wird:
const measurement_id = `G-XXXXXXXXXX`;
const api_secret = `<secret_value>`;
fetch(`https://www.google-analytics.com/debug/mp/collect?measurement_id=${measurement_id}&api_secret=${api_secret}`, {
method: "POST",
body: JSON.stringify({
client_id: 'XXXXXXXXXX.YYYYYYYYYY',
events: [{
// Event names must start with an alphabetic character.
name: '_badEventName',
params: {},
}]
})
});
Validierungsantwort
Hier die Antwort des Validierungsservers auf das vorherige Ereignis:
{
"validationMessages": [
{
"fieldPath": "events",
"description": "Event at index: [0] has invalid name [_badEventName]. Names must start with an alphabetic character.",
"validationCode": "NAME_INVALID"
}
]
}
Antwort
Schlüssel | Typ | Beschreibung |
---|---|---|
validationMessages |
Array<ValidationMessage> | Ein Array von Validierungsmeldungen. |
ValidationMessage
Schlüssel | Typ | Beschreibung |
---|---|---|
fieldPath |
String | Der Pfad zum Feld, das ungültig war. |
description |
String | Eine Beschreibung des Fehlers. |
validationCode |
Validierungscode | Ein Validierungscode, der dem Fehler entspricht. |
Validierungscode
Wert | Beschreibung |
---|---|
VALUE_INVALID |
Der für fieldPath angegebene Wert war ungültig. Weitere Informationen finden Sie unter Einschränkungen.
|
VALUE_REQUIRED |
Ein für eine fieldPath erforderlicher Wert wurde nicht angegeben. |
NAME_INVALID |
Der angegebene Name ist ungültig. Weitere Informationen finden Sie unter Einschränkungen. |
NAME_RESERVED |
Der angegebene Name war einer der reservierten Namen. Reservierte Namen |
VALUE_OUT_OF_BOUNDS |
Der angegebene Wert war zu groß. Weitere Informationen finden Sie unter Einschränkungen. |
EXCEEDED_MAX_ENTITIES |
Die Anfrage enthielt zu viele Parameter. Weitere Informationen finden Sie unter Einschränkungen. |
NAME_DUPLICATED |
Derselbe Name wurde mehrmals in der Anfrage angegeben. |