Salt la conținutul principal

Prezentare generală

Analytics API furnizează mesaje de eroare detaliate pentru a ajuta la depanarea interogărilor nevalide. Această pagină prezintă scenarii comune de eroare și modul de a le rezolva.

Formatul răspunsului de eroare

Când apare o eroare, API-ul returnează un răspuns de eroare cu un mesaj descriptiv:
{
  "error": "Mesaj de eroare care descrie ce nu a funcționat"
}

Erori comune

Erori de autentificare

Eroare: Invalid service keyCauză: Cheia de serviciu furnizată nu este validă sau a fost revocată.Soluție:
  • Verificați dacă cheia de serviciu este corectă
  • Verificați dacă cheia de serviciu nu a fost revocată
  • Generați o nouă cheie de serviciu, dacă este necesar
Eroare: Insufficient permissionsCauză: Cheia de serviciu nu are permisiunile necesare „Teams Read‑only”.Soluție:
  • Actualizați permisiunile cheii de serviciu în setările echipei
  • Asigurați-vă că cheia de serviciu are acces „Teams Read‑only”

Erori de structură ale interogării

Eroare: at least one field or aggregation is requiredCauză: Cererea de interogare nu conține niciun selections sau agregations.Soluție: Adăugați cel puțin un selection în cererea de interogare:
"selections": [
  {
    "field": "num_acceptances",
    "aggregation_function": "QUERY_AGGREGATION_SUM"
  }
]
Eroare: invalid query table: QUERY_DATA_SOURCE_UNSPECIFIEDCauză: Probabil există o greșeală de scriere în câmpul data_source.Soluție: Verificați cu atenție scrierea sursei de date. Opțiuni valide:
  • QUERY_DATA_SOURCE_USER_DATA
  • QUERY_DATA_SOURCE_CHAT_DATA
  • QUERY_DATA_SOURCE_COMMAND_DATA
  • QUERY_DATA_SOURCE_PCW_DATA
Eroare: all selection fields should have an aggregation function, or none of them shouldCauză: Unele selections au funcții de agregare, iar altele nu.Soluție: Adăugați funcții de agregare la toate selections sau eliminați-le de la toate:Invalid:
"selections": [
  {
    "field": "num_acceptances",
    "aggregation_function": "QUERY_AGGREGATION_SUM"
  },
  {
    "field": "num_lines_accepted",
    "aggregation_function": "QUERY_AGGREGATION_UNSPECIFIED"
  }
]
Valid:
"selections": [
  {
    "field": "num_acceptances",
    "aggregation_function": "QUERY_AGGREGATION_SUM"
  },
  {
    "field": "num_lines_accepted",
    "aggregation_function": "QUERY_AGGREGATION_SUM"
  }
]

Erori de câmp și agregare

Eroare: invalid aggregation function for string type field ide: QUERY_AGGREGATION_SUMCauză: Funcția de agregare nu este compatibilă cu tipul de câmp specificat.Soluție: Consultați secțiunea Available Fields pentru a vedea ce funcții de agregare sunt valide pentru fiecare câmp. Câmpurile de tip string acceptă, de obicei, doar COUNT și UNSPECIFIED.
Eroare: tried to aggregate on a distinct field: distinct_developer_days. Consider aggregating on the non-distinct fields instead: [api_key date]Cauză: Câmpurile cu modelul „distinct_*” nu pot fi utilizate în secțiunea aggregations.Soluție: Folosiți câmpurile alternative sugerate pentru agregare:Invalid:
"aggregations": [
  {
    "field": "distinct_developer_days",
    "name": "distinct_developer_days"
  }
]
Valid:
"aggregations": [
  {
    "field": "api_key",
    "name": "api_key"
  },
  {
    "field": "date",
    "name": "date"
  }
]
Eroare: duplicate field alias for selection/aggregation: num_acceptancesCauză: Mai multe selections sau aggregations au același nume.Soluție: Asigurați-vă că toate aliasurile de câmp sunt unice. Rețineți că, dacă nu este specificat niciun nume, valoarea implicită este {aggregation_function}_{field_name}.

Erori la filtrarea datelor

Eroare: invalid group name: GroupNameCauză: Numele de grup specificat nu există în organizația ta.Soluție:
  • Verifică ortografia numelui de grup
  • Confirmă că grupul există în setările echipei tale
  • Folosește exact numele de grup așa cum apare în panoul de control al echipei
Eroare: invalid timestamp formatCauză: Timestamp-ul nu este în formatul corect RFC 3339.Soluție: Folosește formatul corect pentru timestamp:
2023-01-01T00:00:00Z
Exemple valide:
  • 2024-01-01T00:00:00Z
  • 2024-12-31T23:59:59Z
  • 2024-06-15T12:30:45Z
Eroare: Cannot use both group_name and emails parametersCauză: Atât parametrii group_name, cât și emails au fost furnizați într-o cerere Cascade Analytics.Soluție: Folosește fie group_name, fie emails, dar nu ambele:Invalid:
{
  "group_name": "engineering",
  "emails": ["user@example.com"]
}
Valid:
{
  "group_name": "engineering"
}
Sau:
{
  "emails": ["user@example.com", "user2@example.com"]
}

Limitarea ratei

Eroare: 429 Too Many RequestsCauză: Ai depășit limita de rată a API-ului.Soluție:
  • Așteaptă înainte de a trimite solicitări suplimentare
  • Implementează backoff exponențial în clientul tău
  • Ia în considerare gruparea mai multor interogări într-o singură solicitare, acolo unde este posibil
  • Contactează echipa de asistență dacă ai nevoie de limite de rată mai mari

Sfaturi de depanare

1. Începeți cu lucruri simple

Începeți cu întrebări de bază și adăugați treptat mai multă complexitate:
{
  "service_key": "cheia_ta",
  "query_requests": [
    {
      "data_source": "QUERY_DATA_SOURCE_USER_DATA",
      "selections": [
        {
          "field": "num_acceptances",
          "aggregation_function": "QUERY_AGGREGATION_COUNT"
        }
      ]
    }
  ]
}

2. Validați numele câmpurilor

Verificați încă o dată numele câmpurilor în raport cu documentația Available Fields.

3. Verificați compatibilitatea agregării

Asigurați-vă că funcțiile de agregare sunt compatibile cu tipurile de câmp selectate.

4. Testează filtrele separat

Dacă interogarea ta nu oferă rezultatele așteptate, încearcă să înlături filtrele pe rând pentru a izola problema.

5. Folosiți un format JSON corect

Asigurați-vă că JSON-ul este formatat corect și că toate șirurile sunt încadrate corect între ghilimele.

Obținerea de ajutor

Dacă te confrunți în continuare cu probleme:
  1. Verifică atent mesajul de eroare - Majoritatea erorilor includ indicații specifice despre cum să remediezi problema
  2. Consultă exemplele - Compară structura interogării tale cu exemplele funcționale din documentație
  3. Contactează echipa de asistență - Ia legătura cu Windsurf Support și trimite mesajul de eroare specific și interogarea ta

Note despre versiunea API

Gestionarea erorilor și validarea au fost îmbunătățite în API versiunea 1.10.0 și în cele ulterioare. Dacă folosești o versiune mai veche, ia în considerare actualizarea pentru a obține mesaje de eroare mai detaliate.
I