Skip to main content
POST
Interogare Analytics personalizată

Prezentare generală

Analytics API personalizat oferă capabilități flexibile de interogare pentru datele Autocomplete, Chat și Command, cu selections personalizabile, filtre, agregations și ordonări.

Cerere

string
obligatoriu
Cheia dvs. de serviciu cu permisiuni “Analytics Read”
string
Filtrează rezultatele pentru utilizatorii dintr-un anumit grup (opțional)
array
obligatoriu
Array de obiecte de cerere de interogare care definesc datele de preluat

Structura cererii de interogare

Fiecare obiect de cerere de interogare conține:
  • data_source (obligatoriu): Sursa de date de interogat
  • selections (obligatoriu): Array de selecții de câmp de recuperat
  • filters (opțional): Array de filtre de aplicat
  • aggregations (opțional): Array de agregări pentru grupare

Selections

Selections definesc ce câmpuri să fie preluate și cum să fie agregate.
  • field (obligatoriu): Numele câmpului de selectat
  • name (opțional): Alias pentru câmp
  • aggregation_function (opțional): Funcția de agregare de aplicat

Exemplu de selecție

Filtre

Filtrele restrâng datele la elementele care îndeplinesc anumite criterii.
  • name (obligatoriu): Numele câmpului pe care se aplică filtrarea
  • filter (obligatoriu): Operațiunea de filtrare
  • value (obligatoriu): Valoarea utilizată pentru comparație

Exemplu de filtrare

Agregări

Agregările grupează datele după criteriile specificate.
  • field (required): Numele câmpului după care se face gruparea
  • name (required): Alias pentru câmpul de agregare

Exemplu de agregare

Câmpuri disponibile

Date despre utilizator

Toate datele despre utilizator sunt agregate per utilizator, pe oră.

Date Chat

Toate datele Chat reprezintă răspunsuri ale modelului de chat, nu întrebările utilizatorului.

Tipuri de intenție Chat

  • CHAT_INTENT_GENERIC - Chat obișnuit
  • CHAT_INTENT_FUNCTION_EXPLAIN - CodeLens pentru explicarea funcției
  • CHAT_INTENT_FUNCTION_DOCSTRING - CodeLens pentru docstringul funcției
  • CHAT_INTENT_FUNCTION_REFACTOR - CodeLens pentru refactorizarea funcției
  • CHAT_INTENT_CODE_BLOCK_EXPLAIN - CodeLens pentru explicarea blocului de cod
  • CHAT_INTENT_CODE_BLOCK_REFACTOR - CodeLens pentru refactorizarea blocului de cod
  • CHAT_INTENT_PROBLEM_EXPLAIN - CodeLens pentru explicarea problemei
  • CHAT_INTENT_FUNCTION_UNIT_TESTS - CodeLens pentru testele unitare ale funcției

Date Command

Datele Command includ toate comenzile, inclusiv pe cele respinse. Folosiți câmpul accepted pentru a filtra doar comenzile acceptate.

Surse Command

  • COMMAND_REQUEST_SOURCE_LINE_HINT_CODE_LENS
  • COMMAND_REQUEST_SOURCE_DEFAULT - Utilizare tipică a Command
  • COMMAND_REQUEST_SOURCE_RIGHT_CLICK_REFACTOR
  • COMMAND_REQUEST_SOURCE_FUNCTION_CODE_LENS
  • COMMAND_REQUEST_SOURCE_FOLLOWUP
  • COMMAND_REQUEST_SOURCE_CLASS_CODE_LENS
  • COMMAND_REQUEST_SOURCE_PLAN
  • COMMAND_REQUEST_SOURCE_SELECTION_HINT_CODE_LENS

Surse de furnizor

  • PROVIDER_SOURCE_COMMAND_GENERATE - Mod generare
  • PROVIDER_SOURCE_COMMAND_EDIT - Mod editare

Date PCW

Date despre procentul de cod scris (Percent Code Written), cu urmărire separată pentru contribuțiile din Autocomplete și Command.

Filtre PCW

Pentru filtrarea după dată în interogările PCW, utilizați start_timestamp și end_timestamp în corpul principal al cererii.

Exemple de solicitări

Exemplu de date de utilizator

Exemplu de date pentru Chat

Exemplu de date pentru Command

Exemplu de date PCW

Răspuns

array
Tablou de rezultate de interogare, câte unul pentru fiecare cerere de interogare
array
Tablou de elemente de rezultat
object
Obiect care conține câmpurile selectate și valorile acestora

Exemple de răspuns

Răspuns pentru datele utilizatorilor

Răspuns pentru datele Chat

Răspuns de date pentru Command

Răspuns de date pentru PCW

Note importante

  • PCW (Percent Code Written) are o variație ridicată în cadrul aceleiași zile sau pentru același utilizator – agregați datele la nivel de săptămâni pentru informații mai relevante
  • Toate câmpurile de selecție trebuie fie să aibă funcții de agregare, fie niciunul (nu se pot combina)
  • Câmpurile cu tiparul „distinct_*” nu pot fi folosite în aggregations
  • Aliasurile câmpurilor trebuie să fie unice în toate selections și aggregations
  • Dacă nu este specificată nicio funcție de agregare, valoarea implicită este UNSPECIFIED