...
1# Go Telemetry
2
3This repository holds the Go Telemetry server code and libraries, used for
4hosting [telemetry.go.dev](https://telemetry.go.dev) and instrumenting Go
5toolchain programs with opt-in telemetry.
6
7**Warning**: this repository is intended for use only in tools maintained by
8the 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
11no compatibility guarantees for any of the packages here: public APIs will
12change 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
32This repository uses Gerrit for code changes. To learn how to submit changes to
33this repository, see https://go.dev/doc/contribute.
34
35The git repository is https://go.googlesource.com/telemetry.
36
37The main issue tracker for the telemetry repository is located at
38https://go.dev/issues. Prefix your issue with "x/telemetry:" in
39the subject line, so it is easy to find.
40
41### Linting & Formatting
42
43This 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
47See the style guides:
48
49- [TypeScript](https://google.github.io/styleguide/tsguide.html)
50- [CSS](https://go.dev/wiki/CSSStyleGuide)
51
52It is encouraged that all TS and CSS code be run through formatters before
53submitting a change. However, it is not a strict requirement enforced by CI.
54
55### Installing npm Dependencies:
56
571. Install [docker](https://docs.docker.com/get-docker/)
582. Run `./npm install`
59
60### Run ESLint, Stylelint, & Prettier
61
62 ./npm run all
View as plain text