Google planerar att lÀgga till insamling av telemetry i Go-sprÄkets verktyg och inkludera sÀndning av insamlade data som standard. Telemetrin kommer att tÀcka kommandoradsverktyg som utvecklas av Go:s utvecklingsteam, sÄsom verktyget "go", kompilatorn, applikationerna gopls och govulncheck. Insamlingen av uppgifter kommer att begrÀnsas till att samla information om verktygens prestanda, dvs. telemetrin kommer inte att lÀggas till anvÀndarapplikationer som byggs med verktygen.
Motivet för insamlingen av telemetry Àr en önskan att fÄ den saknade informationen om utvecklarnas behov och de specifika funktionerna av deras arbete, vilket inte fÄngas upp genom feedbackmetoder som felrapporter och enkÀter. Insamling av telemetry kommer att hjÀlpa till att identifiera avvikelser och onormalt beteende, utvÀrdera hur utvecklare interagerar med verktygen och förstÄ vilka alternativ som Àr mest efterfrÄgade och vilka som nÀstan inte anvÀnds. Den insamlade statistiken förvÀntas möjliggöra uppgradering av verktygen, öka effektiviteten och anvÀndarvÀnligheten samt uppmÀrksamma de funktioner som utvecklarna verkligen behöver.
För datainsamlingen föreslÄs en ny arkitektur för "transparent telemetry", som syftar till att möjliggöra oberoende offentlig granskning av de insamlade data och samla enbart de absolut nödvÀndiga sammanfattningar för att undvika lÀckor av detaljerad information om anvÀndarnas aktiviteter. Till exempel kommer man vid utvÀrdering av den trafik som verktygen förbrukar att ta hÀnsyn till sÄdana metrik, som datatrÀffrÀknare i kilobyte under hela Äret. All insamlad data kommer att publiceras offentligt för inspektion och analys. För att stÀnga av sÀndningen av telemetry krÀvs att man sÀtter miljövariabeln "GOTELEMETRY=off".
Nyckelprinciperna för att bygga transparent telemetry:
- Beslut om vilka metrik som ska samlas in kommer att fattas inom ramen för en öppen offentlig process.
- Konfigurationen för insamling av telemetry kommer automatiskt att genereras baserat pÄ en lista över aktivt spÄrade metrik, utan att samla data som inte Àr relaterade till dessa metrik.
- Konfigurationen för insamling av telemetri kommer att hanteras i en transparent revisionslogg med verifierbara poster, vilket försvÄrar selektiv tillÀmpning av olika insamlingsinstÀllningar för olika system.
- Konfigurationen för insamling av telemetri kommer att utformas som en cachebar proxy Go-modul, som automatiskt kan tillÀmpas i system med redan anvÀnda lokala Go-proxies. Laddningen av telemetri-konfigurationen kommer att initieras högst en gÄng i veckan med en sannolikhet pÄ 10% (det vill sÀga varje system kommer att ladda konfigurationen cirka 5 gÄnger om Äret).
- Som överförs till externa servrar uppgifter kommer endast att inkludera sammanfattande rÀknare som tar hÀnsyn till statistiken över hela veckan och inte Àr kopplade till en specifik tid.
- De skickade rapporterna kommer inte att inkludera nÄgra former av identifierare för system och anvÀndare.
- De skickade rapporterna kommer endast att innehÄlla rader som redan Àr kÀnda pÄ servern, det vill sÀga namnen pÄ rÀknarna, namnen pÄ standardprogram, kÀnda versionsnummer och funktionsnamn i de inbyggda verktygen (vid sÀndning av stackspÄrningar). icke-strÀngdata kommer att begrÀnsas till rÀknare, datum och antal rader.
- IP-adresser som gör förfrÄgningar till telemetriservrar kommer inte att sparas i loggar.
- För att uppnÄ det nödvÀndiga urvalet planeras det att samla in 16 000 rapporter i veckan, vilket under förutsÀttning av tvÄ miljoner installerade verktyg endast krÀver att rapporter skickas frÄn 2% av systemen varje vecka.
- De insamlade metrikorna i aggregerad form kommer att publiceras offentligt i grafiska och tabellÀra presentationer. FullstÀndiga rÄdata som samlats in under telemetriinsamlingsprocessen kommer ocksÄ att publiceras.
- Insamling av telemetri kommer att vara aktiverad som standard, men det kommer att finnas ett enkelt sÀtt att stÀnga av den.
KĂ€lla: opennet.ru
