2 điểm bởi GN⁺ 14 ngày trước | Chưa có bình luận nào. | Chia sẻ qua WhatsApp
  • GitHub CLI gửi telemetry dựa trên định danh giả nhằm tăng khả năng quan sát việc sử dụng tính năng và hỗ trợ cải thiện sản phẩm
  • Dựa trên mức độ chấp nhận subcommand và mẫu sử dụng flags để quyết định ưu tiên công việc, đánh giá liệu tính năng có đáp ứng nhu cầu người dùng hay không, và xem xét lại discoverability cũng như design
  • Với triển khai mã nguồn mở, có thể trực tiếp xem xét mã telemetry trong kho cli/cli, và có thể dùng logging mode để kiểm tra JSON payload trước khi thực sự gửi đi
  • Có thể opt-out bằng biến môi trường GH_TELEMETRY=false, DO_NOT_TRACK=true hoặc gh config set telemetry disabled; biến môi trường được ưu tiên hơn config
  • Các sự kiện telemetry được gửi tới hạ tầng phân tích nội bộ của GitHub; trang này chỉ nói về việc thu thập dữ liệu phía client của gh, còn extensions và Copilot CLI là các đối tượng riêng

Telemetry

  • GitHub CLI gửi telemetry dựa trên định danh giả nhằm hỗ trợ cải thiện sản phẩm
  • Cung cấp thông tin để người dùng hiểu dữ liệu nào được gửi đi và vì sao

Vì sao thu thập telemetry

  • Đề cập nhu cầu có khả năng quan sát việc sử dụng các tính năng của GitHub CLI, đặc biệt khi mức độ agentic adoption tăng lên, nhằm hiểu cách công cụ đang thực sự được sử dụng
    • Nhóm sử dụng dữ liệu này để quyết định ưu tiên công việc
    • Đánh giá liệu tính năng có thực sự đáp ứng nhu cầu người dùng hay không
  • Nêu rõ mục đích kiểm tra mức độ chấp nhận sau khi phát hành subcommand mới
    • Nếu hầu như không có người dùng, có thể cần xem xét lại discoverability hoặc design của tính năng đó
    • Nếu xác nhận có mức sử dụng cao cùng với một số flags nhất định, có thể xác định nơi nên đầu tư để mang lại trải nghiệm tốt hơn

Xem xét telemetry

  • GitHub CLI là mã nguồn mở, và có thể trực tiếp xem xét phần triển khai telemetry trong kho cli/cli
  • Có thể dùng logging mode để xem dữ liệu dự kiến sẽ được gửi mà không thực sự gửi đi
    • Hỗ trợ cách dùng bằng biến môi trường
      • export GH_TELEMETRY=log
    • Hỗ trợ cách dùng bằng cấu hình CLI
      • gh config set telemetry log
  • Trong logging mode, JSON payload vốn sẽ được gửi sẽ được in ra stderr
    • Có thể kiểm tra từng trường trước khi quyết định có tiếp tục bật telemetry hay không
    • Đưa ra ví dụ lệnh GH_TELEMETRY=log gh repo list --archived
  • Nêu rõ thông tin sự kiện có trong payload ví dụ
    • Kiểu sự kiện command_invocation
    • Các mục dimensions gồm agent, architecture, command, device_id, flags, invocation_id, is_tty, os, timestamp, version
    • Ví dụ giá trị gồm architecture: arm64, command: gh repo list, flags: archived, os: darwin, version: 2.91.0
  • Lệnh đó chỉ có thể ghi log telemetry về chính xác lệnh đã chạy và ngữ cảnh của nó
    • Khi thay đổi biến môi trường, các events và event dimensions có trong payload có thể thay đổi
    • Khi thay đổi tài khoản đã xác thực, các mục được bao gồm cũng có thể thay đổi

Cách opt-out

  • Có thể opt-out khỏi telemetry đã được kiểm tra trong logging mode
  • Hỗ trợ cách dùng bằng biến môi trường
    • export GH_TELEMETRY=false
    • Có thể dùng các giá trị falsy như 0, false, disabled, chuỗi rỗng
    • Cũng hỗ trợ quy ước DO_NOT_TRACK, với ví dụ export DO_NOT_TRACK=true
  • Hỗ trợ cách dùng bằng cấu hình CLI
    • gh config set telemetry disabled
  • Biến môi trường được ưu tiên cao hơn giá trị config

Dữ liệu được gửi tới đâu

  • Các sự kiện telemetry được gửi tới hạ tầng phân tích nội bộ của GitHub
  • Để biết thêm về cách xử lý dữ liệu, tham khảo GitHub General Privacy Statement

Thông tin thêm

  • GitHub CLI hỗ trợ mở rộng tính năng bằng cách cài đặt extensions của GitHub và bên thứ ba, bao gồm cả agents
  • Các extensions này có thể tự thu thập dữ liệu sử dụng
    • Không bị kiểm soát bởi thiết lập opt-out này
    • Cần xem tài liệu của từng extension để biết cách chúng báo cáo telemetry và liệu có thể tắt hay không
  • Trang này chỉ nói về việc thu thập dữ liệu phía client của GitHub CLI gh
    • Không áp dụng cho GitHub Copilot và Copilot CLI
    • Copilot CLI xử lý việc thu thập dữ liệu riêng biệt
    • Tham khảo Using GitHub Copilot CLI, Responsible Use of the GitHub Copilot CLI để biết thêm thông tin

Chưa có bình luận nào.

Chưa có bình luận nào.