Google намерен добавить телеметрию в инструментарий для языка Go

in #ru2 years ago

Компания Google планирует добавить сбор телеметрии в инструментарий языка Go и включить по умолчанию отправку собранных данных. Телеметрия будет охватывать утилиты командной строки, развиваемые командой разработчиков языка Go, такие как утилита "go", компилятор, приложения gopls и govulncheck. Сбор сведений будет ограничен только накоплением информации об особенностях работы утилит, т.е. телеметрия не будет добавляться в пользовательские приложения, собираемые при помощи инструментария.

В качестве мотива сбора телеметрии называется желание получить недостающую информацию о потребностях и особенностях работы разработчиков, которую не удаётся уловить, используя как метод обратной связи сообщения об ошибках и опросы. Сбор телеметрии поможет в выявлении аномалий и нештатного поведения, оценке особенности взаимодействия разработчиков с инструментарием и понимании какие опции наиболее востребованы, а какие почти не используются. Ожидается, что накопленная статистика даст возможность модернизировать инструментарий, позволит повысить эффективность и удобство работы, акцентирует отдельное внимание на необходимых разработчикам возможностях.

Для сбора данных предложена новая архитектура "прозрачной телеметрии" (transparent telemetry), направленная на предоставление возможности независимого общественного аудита получаемых данных и сбор только минимально необходимых обобщённых сведений, чтобы недопустить утечки следов с детальной информацией об активности пользователей. Например, при оценке потребляемого инструментарием трафика планируется учитывать такие метрики, как счётчик данных в килобайтах за весь год. Все собранные данные будут публиковаться в открытом доступе для инспектирования и анализа. Для отключения отправки телеметрии потребуется установить переменную окружения "GOTELEMETRY=off".

Ключевые принципы построения прозрачной телеметрии:

  • Решения о собираемых метриках будут приниматься в рамках открытого публичного процесса.
  • Конфигурация сбора телеметрии будет автоматически генерироваться на основе списка активно отслеживаемых метрик, без сбора данных, не связанных с этими метриками.
  • Конфигурация сбора телеметрии будет обслуживаться в прозрачном логе аудита с верифицируемыми записями, что усложнит выборочное применение разных настроек сбора для разных систем.
  • Конфигурация сбора телеметрии будет оформлена в виде кэшируемого проксируемого Go-модуля, который сможет автоматически применяться в системах с уже используемыми локальными Go-прокси. Загрузка конфигурация телеметрии будет инициироваться не чаще раза в неделю с вероятностью в 10% (т.е. каждая система будет загружать конфигурацию около 5 раз в год).
  • Передаваемые на внешние серверы сведения будут включать только итоговые счётчики, учитывающие статистику в разрезе полной недели и не привязанные к конкретному времени.
  • Отправляемые отчёты не будут включать какие-либо формы идентификаторов систем и пользователей.
  • Отправляемые отчёты будут содержать только строки, которые уже известны на сервере, т.е. название счётчиков, имена типовых программ, известные номера версий, имена функций в штатных утилитах инструментария (при отправке трассировок стека). Нестроковые данные будут ограничены счётчиками, датами и числом строк.
  • IP-адреса, с которых осуществляется обращение к серверам телеметрии, не будут сохраняться в логах.
  • Для получения необходимой выборки планируется собирать 16 тысяч отчётов в неделю, что в условии наличия двух миллионов установок инструментария потребует каждую неделю отправки отчётов лишь с 2% систем.
  • Собранные метрики в агрегированной форме будут публиковаться публично в графическом и табличном представлениях. Также будут публиковаться полные исходные данные, накопленные в процессе сбора телеметрии.
  • Сбор телеметрии будет включён по умолчанию, но будет предоставлен простой способ для отключения.

Источник: https://www.opennet.ru/opennews/art.shtml?num=58639

Sort:  

You've got a free upvote from witness fuli.
Peace & Love!

Coin Marketplace

STEEM 0.17
TRX 0.16
JST 0.028
BTC 76338.99
ETH 2965.83
USDT 1.00
SBD 2.62