Prezentare generală
Cerere
Cheia ta de serviciu cu permisiuni „Teams Read-only”
Filtrează rezultatele la utilizatorii dintr-un anumit grup (opțional)
Listă de obiecte de cerere de interogare care definesc datele de extras
Structura cererii de interogare
Sursa de date de interogat. Opțiuni:
QUERY_DATA_SOURCE_USER_DATA
- date AutocompleteQUERY_DATA_SOURCE_CHAT_DATA
- date ChatQUERY_DATA_SOURCE_COMMAND_DATA
- date CommandQUERY_DATA_SOURCE_PCW_DATA
- date Percent Code Written
Array de selecții de câmp de recuperat (consultați secțiunea Selections)
Array de filtre de aplicat (consultați secțiunea Filters)
Array de agregări pentru grupare (consultați secțiunea Aggregations)
Selections
Numele câmpului de selectat (vezi secțiunea Available Fields)
Alias pentru câmp. Dacă nu este specificat, valoarea implicită este
{aggregation_function}_{field_name}
(cu litere mici)Funcția de agregare de aplicat:
QUERY_AGGREGATION_UNSPECIFIED
(implicit)QUERY_AGGREGATION_COUNT
QUERY_AGGREGATION_SUM
QUERY_AGGREGATION_AVG
QUERY_AGGREGATION_MAX
QUERY_AGGREGATION_MIN
Exemplu de selecție
Filtre
Numele câmpului pe care se aplică filtrarea
Valoarea de comparat
Operația de filtrare:
QUERY_FILTER_EQUAL
QUERY_FILTER_NOT_EQUAL
QUERY_FILTER_GREATER_THAN
QUERY_FILTER_LESS_THAN
QUERY_FILTER_GE
(mai mare sau egal)QUERY_FILTER_LE
(mai mic sau egal)
Exemplu de filtrare
Agregations
Numele câmpului după care se grupează
Alias pentru câmpul de agregare
Exemplu de agregare
Câmpuri disponibile
Date despre utilizator
Numele câmpului | Descriere | Agregări valide |
---|---|---|
api_key | Hash-ul cheii API a utilizatorului | UNSPECIFIED, COUNT |
date | Data UTC a Autocomplete | UNSPECIFIED, COUNT |
date UTC-x | Dată cu decalaj de fus orar (de ex., „date UTC-8” pentru PST) | UNSPECIFIED, COUNT |
hour | Ora UTC a Autocomplete | UNSPECIFIED, COUNT |
language | Limbaj de programare | UNSPECIFIED, COUNT |
ide | IDE utilizat | UNSPECIFIED, COUNT |
version | Versiunea Windsurf | UNSPECIFIED, COUNT |
num_acceptances | Număr de acceptări Autocomplete | SUM, MAX, MIN, AVG |
num_lines_accepted | Linii de cod acceptate | SUM, MAX, MIN, AVG |
num_bytes_accepted | Octeți acceptați | SUM, MAX, MIN, AVG |
distinct_users | Utilizatori unici | UNSPECIFIED, COUNT |
distinct_developer_days | Perechi distincte (utilizator, zi) | UNSPECIFIED, COUNT |
distinct_developer_hours | Perechi distincte (utilizator, oră) | UNSPECIFIED, COUNT |
Date Chat
Field Name | Description | Valid Aggregations |
---|---|---|
api_key | Hash-ul cheii API a utilizatorului | UNSPECIFIED, COUNT |
model_id | ID-ul modelului de Chat | UNSPECIFIED, COUNT |
date | Data UTC a răspunsului de chat | UNSPECIFIED, COUNT |
date UTC-x | Dată cu decalaj de fus orar | UNSPECIFIED, COUNT |
ide | IDE utilizat | UNSPECIFIED, COUNT |
version | Versiunea Windsurf | UNSPECIFIED, COUNT |
latest_intent_type | Tipul intenției din Chat (vezi Tipuri de intenții mai jos) | UNSPECIFIED, COUNT |
num_chats_received | Numărul de mesaje de chat primite | SUM, MAX, MIN, AVG |
chat_accepted | Dacă chatul a fost acceptat (thumbs up) | SUM, COUNT |
chat_inserted_at_cursor | Dacă s-a făcut clic pe butonul „Insert” | SUM, COUNT |
chat_applied | Dacă s-a făcut clic pe butonul „Apply Diff” | SUM, COUNT |
chat_loc_used | Linii de cod utilizate din chat | SUM, MAX, MIN, AVG |
Tipuri de intenție Chat
CHAT_INTENT_GENERIC
- Chat obișnuitCHAT_INTENT_FUNCTION_EXPLAIN
- CodeLens pentru explicarea funcțieiCHAT_INTENT_FUNCTION_DOCSTRING
- CodeLens pentru docstringul funcțieiCHAT_INTENT_FUNCTION_REFACTOR
- CodeLens pentru refactorizarea funcțieiCHAT_INTENT_CODE_BLOCK_EXPLAIN
- CodeLens pentru explicarea blocului de codCHAT_INTENT_CODE_BLOCK_REFACTOR
- CodeLens pentru refactorizarea blocului de codCHAT_INTENT_PROBLEM_EXPLAIN
- CodeLens pentru explicarea problemeiCHAT_INTENT_FUNCTION_UNIT_TESTS
- CodeLens pentru testele unitare ale funcției
Date Command
accepted
pentru a filtra doar comenzile acceptate.
Numele câmpului | Descriere | Agregări valide |
---|---|---|
api_key | Hash-ul cheii API a utilizatorului | UNSPECIFIED, COUNT |
date | Data UTC a comenzii | UNSPECIFIED, COUNT |
timestamp | Marcajul temporal UTC al comenzii | UNSPECIFIED, COUNT |
language | Limbaj de programare | UNSPECIFIED, COUNT |
ide | IDE utilizat | UNSPECIFIED, COUNT |
version | Versiunea Windsurf | UNSPECIFIED, COUNT |
command_source | Sursa declanșării Command (vedeți Command Sources mai jos) | UNSPECIFIED, COUNT |
provider_source | Mod de generare sau editare | UNSPECIFIED, COUNT |
lines_added | Linii de cod adăugate | SUM, MAX, MIN, AVG |
lines_removed | Linii de cod eliminate | SUM, MAX, MIN, AVG |
bytes_added | Bytes adăugați | SUM, MAX, MIN, AVG |
bytes_removed | Bytes eliminați | SUM, MAX, MIN, AVG |
selection_lines | Linii selectate (zero pentru generări) | SUM, MAX, MIN, AVG |
selection_bytes | Bytes selectați (zero pentru generări) | SUM, MAX, MIN, AVG |
accepted | Dacă a fost acceptată comanda | SUM, COUNT |
Surse Command
COMMAND_REQUEST_SOURCE_LINE_HINT_CODE_LENS
COMMAND_REQUEST_SOURCE_DEFAULT
- Utilizare tipică a CommandCOMMAND_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 generarePROVIDER_SOURCE_COMMAND_EDIT
- Mod editare
Date PCW
Field Name | Description | Valid Aggregations |
---|---|---|
percent_code_written | Calculat ca codeium_bytes / (codeium_bytes + user_bytes) | UNSPECIFIED |
codeium_bytes | Totalul de bytes generați de Codeium | UNSPECIFIED |
user_bytes | Totalul de bytes scriși de utilizator | UNSPECIFIED |
total_bytes | codeium_bytes + user_bytes | UNSPECIFIED |
codeium_bytes_by_autocomplete | Bytes Codeium din Autocomplete | UNSPECIFIED |
codeium_bytes_by_command | Bytes Codeium din Command | UNSPECIFIED |
Filtre PCW
Denumire câmp | Descriere | Exemple |
---|---|---|
language | Limbaj de programare | KOTLIN, GO, JAVA |
ide | IDE utilizat | jetbrains, vscode |
version | Versiune Windsurf | 1.28.0, 130.0 |
start_timestamp
și end_timestamp
în corpul principal al cererii.
Exemple de solicitări
Exemplu de date de utilizator
Exemplu de date Chat
Exemplu de date pentru Command
Exemplu de date PCW
Răspuns
Exemple de răspuns
Răspuns pentru datele utilizatorilor
Răspuns de date Chat
Răspuns de date pentru Command
Răspuns de date PCW
Note importante
- PCW (Percent Code Written) poate varia semnificativ în cadrul aceleiași zile sau pentru același utilizator — agregați pe perioade de câteva săptămâni pentru informații mai bune
- Toate câmpurile de selecție trebuie fie să aibă funcții de agregare, fie niciunul (nu se pot combina)
- Câmpurile cu modelul „distinct_*” nu pot fi folosite în agregations
- Aliasurile câmpurilor trebuie să fie unice în toate selections și aggregations
- Dacă nu este specificată o funcție de agregare, valoarea implicită este UNSPECIFIED