Edward Lemur | 32e3d1e | 2018-07-12 00:54:05 | [diff] [blame] | 1 | # Why am I seeing this message? |
| 2 | |
| 3 | We're starting to collect metrics about how developers use gclient and other |
| 4 | tools in depot\_tools to better understand the performance and failure modes of |
| 5 | the tools, as well of the pain points and workflows of depot\_tools users. |
| 6 | |
Robert Liao | 20c1311 | 2018-07-19 23:51:48 | [diff] [blame] | 7 | We will collect metrics only if you're a Googler on the corp network: If you can |
Edward Lemur | 54edfa4 | 2018-07-17 00:50:07 | [diff] [blame] | 8 | access https://cit-cli-metrics.appspot.com/should-upload, then we will collect |
| 9 | metrics from you. |
| 10 | |
| 11 | The first ten executions of depot\_tools commands will print large warnings |
| 12 | counting down to zero. When the counter hits zero, metrics collection will |
| 13 | automatically begin, and depot\_tools will display large warning messages |
| 14 | informing you of it. These messages will continue until you explicitly opt in or |
| 15 | opt out. |
| 16 | |
| 17 | You can run `gclient metrics --opt-in` or `gclient metrics --opt-out` to do so. |
| 18 | And you can opt-in or out at any time. |
| 19 | |
| 20 | Please consider opting in. It will allow us to know what features are the most |
Edward Lemur | 32e3d1e | 2018-07-12 00:54:05 | [diff] [blame] | 21 | important, what features can we deprecate, and what features should we develop |
| 22 | to better cover your use case. |
| 23 | |
Edward Lemur | 32e3d1e | 2018-07-12 00:54:05 | [diff] [blame] | 24 | ## What metrics are you collecting? |
| 25 | |
| 26 | First, some words about what data we are **NOT** collecting: |
| 27 | |
Robert Liao | 20c1311 | 2018-07-19 23:51:48 | [diff] [blame] | 28 | - We won't record any information that identifies you personally. |
Edward Lemur | 32e3d1e | 2018-07-12 00:54:05 | [diff] [blame] | 29 | - We won't record the command line flag values. |
| 30 | - We won't record information about the current directory or environment flags. |
Edward Lemur | 5a9ff43 | 2018-10-30 19:00:22 | [diff] [blame] | 31 | - We won't record arbitrary strings. We only collect a string if it is in the |
| 32 | list available at |
| 33 | https://chromium.googlesource.com/infra/infra/+/master/go/src/infra/appengine/depot_tools_metrics/metrics/metrics_schema.json#45 |
Edward Lemur | 32e3d1e | 2018-07-12 00:54:05 | [diff] [blame] | 34 | |
| 35 | The metrics we're collecting are: |
| 36 | |
Edward Lemur | 18df41e | 2019-04-26 00:42:04 | [diff] [blame] | 37 | - The time when the command was run. |
| 38 | - The age of your depot\_tools checkout. |
Edward Lemur | 32e3d1e | 2018-07-12 00:54:05 | [diff] [blame] | 39 | - Your version of Python (in the format major.minor.micro). |
Edward Lemur | 5a9ff43 | 2018-10-30 19:00:22 | [diff] [blame] | 40 | - Your version of Git (in the format major.minor.micro). |
Edward Lemur | 32e3d1e | 2018-07-12 00:54:05 | [diff] [blame] | 41 | - The OS of your machine (i.e. win, linux or mac). |
| 42 | - The arch of your machine (e.g. x64, arm, etc). |
| 43 | - The command that you ran (e.g. `gclient sync`). |
| 44 | - The flag names (but not their values) that you passed to the command |
| 45 | (e.g. `--force`, `--revision`). |
| 46 | - The execution time. |
| 47 | - The exit code. |
| 48 | - The project you're working on. We only record data about projects you can |
| 49 | fetch using depot\_tools' fetch command (e.g. Chromium, WebRTC, V8, etc) |
Edward Lemur | 18df41e | 2019-04-26 00:42:04 | [diff] [blame] | 50 | - The age of your project checkout. |
Edward Lemur | 32e3d1e | 2018-07-12 00:54:05 | [diff] [blame] | 51 | - What features are you using in your DEPS and .gclient files. For example: |
Edward Lemur | 5a9ff43 | 2018-10-30 19:00:22 | [diff] [blame] | 52 | - Are you setting `use_relative_paths=True`? |
Edward Lemur | 32e3d1e | 2018-07-12 00:54:05 | [diff] [blame] | 53 | - Are you using `recursedeps`? |
Edward Lemur | 5a9ff43 | 2018-10-30 19:00:22 | [diff] [blame] | 54 | - Information about the http requests that depot_tools makes: |
| 55 | - What host are we making the request to? |
| 56 | Only collected for well known hosts like chromium-review.googlesource.com. |
| 57 | - What path did we access on the server? |
Edward Lemur | 59127a5 | 2018-11-15 17:55:34 | [diff] [blame] | 58 | We map the path to an enum to make sure we're not collecting personally |
| 59 | identifiable information. |
Edward Lemur | 5a9ff43 | 2018-10-30 19:00:22 | [diff] [blame] | 60 | i.e. we report 'changes/' instead of 'changes/12345' |
| 61 | - What arguments were used on the request? |
| 62 | We collect only known argument names, but not their values. |
| 63 | - What known headers were present or absent? |
| 64 | - How long did the execution take? |
| 65 | - What was the response code? |
| 66 | - What HTTP method was used? (i.e. GET, PUT, POST, etc.) |
| 67 | - Information about the commands that depot_tools runs: |
| 68 | - What command was executed? (i.e. git or cipd) |
| 69 | - How long did the command execute for? |
| 70 | - What argument names (but not values) were passed to the program. |
| 71 | (e.g. --checkout but not the branch name). |
| 72 | - What was the exit code? |
| 73 | |
| 74 | The list of all known strings we collect can be found at |
| 75 | https://chromium.googlesource.com/infra/infra/+/master/go/src/infra/appengine/depot_tools_metrics/metrics/metrics_schema.json#45 |
Edward Lemur | 32e3d1e | 2018-07-12 00:54:05 | [diff] [blame] | 76 | |
Edward Lemur | 4883626 | 2018-10-18 02:08:06 | [diff] [blame] | 77 | ## Why am I seeing this message *again*? |
| 78 | |
| 79 | We might want to collect additional metrics, and if so we will ask you for |
| 80 | permission again. |
| 81 | |
| 82 | Opting in or out explicitly will stop the messages from being displayed. |
| 83 | |
Andy Perelson | 63517c8 | 2018-10-16 23:50:54 | [diff] [blame] | 84 | # How can I check if metrics are being collected? |
| 85 | |
| 86 | You can run `gclient metrics` and it will report if you have opted in, out, or |
| 87 | not chosen for metrics collection. |
| 88 | |
| 89 | If you have not yet explicitly opted in or out you will see a message after |
| 90 | each time we collect metrics. |
Edward Lemur | 32e3d1e | 2018-07-12 00:54:05 | [diff] [blame] | 91 | |
| 92 | # How can I stop seeing this message? |
| 93 | |
| 94 | You will stop seeing it once you have explicitly opted in or out of depot\_tools |
| 95 | metrics collection. |
| 96 | |
| 97 | You can run `gclient metrics --opt-in` or `gclient metrics --opt-out` to do so. |
| 98 | And you can opt-in or out at any time. |