README.md (2648B)
1 # Go Telemetry 2 3 This repository holds the Go Telemetry server code and libraries, used for 4 hosting [telemetry.go.dev](https://telemetry.go.dev) and instrumenting Go 5 toolchain programs with opt-in telemetry. 6 7 **Warning**: this repository is intended for use only in tools maintained by 8 the Go team, including tools in the Go distribution and auxiliary tools like 9 [gopls](https://pkg.go.dev/golang.org/x/tools/gopls) or 10 [govulncheck](https://pkg.go.dev/golang.org/x/vuln/cmd/govulncheck). There are 11 no compatibility guarantees for any of the packages here: public APIs will 12 change in breaking ways as the telemetry integration is refined. 13 14 ## Notable Packages 15 16 - The [x/telemetry/counter](https://pkg.go.dev/golang.org/x/telemetry/counter) 17 package provides a library for instrumenting programs with counters and stack 18 reports. 19 - The [x/telemetry/upload](https://pkg.go.dev/golang.org/x/telemetry/upload) 20 package provides a hook for Go toolchain programs to upload telemetry data, 21 if the user has opted in to telemetry uploading. 22 - The [x/telemetry/cmd/gotelemetry](https://pkg.go.dev/pkg/golang.org/x/telemetry/cmd/gotelemetry) 23 command is used for managing telemetry data and configuration. 24 - The [x/telemetry/config](https://pkg.go.dev/pkg/golang.org/x/telemetry/config) 25 package defines the subset of telemetry data that has been approved for 26 uploading by the telemetry proposal process. 27 - The [x/telemetry/godev](https://pkg.go.dev/pkg/golang.org/x/telemetry/godev) directory defines 28 the services running at [telemetry.go.dev](https://telemetry.go.dev). 29 30 ## Contributing 31 32 This repository uses Gerrit for code changes. To learn how to submit changes to 33 this repository, see https://go.dev/doc/contribute. 34 35 The git repository is https://go.googlesource.com/telemetry. 36 37 The main issue tracker for the telemetry repository is located at 38 https://go.dev/issues. Prefix your issue with "x/telemetry:" in 39 the subject line, so it is easy to find. 40 41 ### Linting & Formatting 42 43 This repository uses [eslint](https://eslint.org/) to format TS files, 44 [stylelint](https://stylelint.io/) to format CSS files, and 45 [prettier](https://prettier.io/) to format TS, CSS, Markdown, and YAML files. 46 47 See the style guides: 48 49 - [TypeScript](https://google.github.io/styleguide/tsguide.html) 50 - [CSS](https://go.dev/wiki/CSSStyleGuide) 51 52 It is encouraged that all TS and CSS code be run through formatters before 53 submitting a change. However, it is not a strict requirement enforced by CI. 54 55 ### Installing npm Dependencies: 56 57 1. Install [docker](https://docs.docker.com/get-docker/) 58 2. Run `./npm install` 59 60 ### Run ESLint, Stylelint, & Prettier 61 62 ./npm run all