summaryrefslogtreecommitdiffstats
path: root/docs/anonymous-statistics.md
diff options
context:
space:
mode:
authorJoel Hans <joel@netdata.cloud>2020-01-08 10:44:44 +0200
committerGitHub <noreply@github.com>2020-01-08 10:44:44 +0200
commit9bccf7afc97ff29e67a194df3bf10a219df01dcc (patch)
tree5831fb1fa80a4032ec05f768bdbbc5e108a85ef0 /docs/anonymous-statistics.md
parent7bcb8c4148d7b303ef6e6cb145445f320af2b073 (diff)
Docs: Improve documentation of opting out of anonymous statistics (#7597)
* Added anon stats to installer page * Added notes to other pages * Tweaks to main README and docs homepage * Path fix * Tweak and add to Docker page * Fixing issues from Mansour & Timo * Linter fixes
Diffstat (limited to 'docs/anonymous-statistics.md')
-rw-r--r--docs/anonymous-statistics.md95
1 files changed, 61 insertions, 34 deletions
diff --git a/docs/anonymous-statistics.md b/docs/anonymous-statistics.md
index 7f175a1c9e..d8c075a82a 100644
--- a/docs/anonymous-statistics.md
+++ b/docs/anonymous-statistics.md
@@ -1,49 +1,58 @@
-# Anonymous Statistics
+# Anonymous statistics
-From Netdata v1.12 and above, anonymous usage information is collected by default and sent to Google Analytics.
-The statistics calculated from this information will be used for:
+Starting with v1.12, Netdata collects anonymous usage information by default and sends it to Google Analytics. We use
+the statistics gathered from this information for two purposes:
-1. **Quality assurance**, to help us understand if Netdata behaves as expected and help us identify repeating issues for certain distributions or environment.
+1. **Quality assurance**, to help us understand if Netdata behaves as expected, and to help us classify repeated
+ issues with certain distributions or environments.
-2. **Usage statistics**, to help us focus on the parts of Netdata that are used the most, or help us identify the extend our development decisions influence the community.
+2. **Usage statistics**, to help us interpret how people use the Netdata agent in real-world environments, and to help
+ us identify how our development/design decisions influence the community.
-Information is sent to Netdata via two different channels:
+Netdata sends information to Google Analytics via two different channels:
-- Google Tag Manager is used when an agent's dashboard is accessed.
-- The script `anonymous-statistics.sh` is executed by the Netdata daemon, when Netdata starts, stops cleanly, or fails.
+- Google Tag Manager fires when you access an agent's dashboard.
+- The Netdata daemon executes the [`anonymous-statistics.sh`
+ script](https://github.com/netdata/netdata/blob/6469cf92724644f5facf343e4bdd76ac0551a418/daemon/anonymous-statistics.sh.in)
+ when Netdata starts, stops cleanly, or fails.
-Both methods are controlled via the same [opt-out mechanism](#opt-out)
+You can opt-out from sending anonymous statistics to Netdata through three different [opt-out mechanisms](#opt-out).
## Google tag manager
-Google tag manager (GTM) is the recommended way of collecting statistics for new implementations using GA. Unlike the older API, the logic of when to send information to GA and what information to send is controlled centrally.
+Google tag manager (GTM) is the recommended way of collecting statistics for new implementations using GA. Unlike the
+older API, the logic of when to send information to GA and what information to send is controlled centrally.
-We have configured GTM to trigger the tag only when the variable `anonymous_statistics` is true. The value of this variable is controlled via the [opt-out mechanism](#opt-out).
+We have configured GTM to trigger the tag only when the variable `anonymous_statistics` is true. The value of this
+variable is controlled via the [opt-out mechanism](#opt-out).
To ensure anonymity of the stored information, we have configured GTM's GA variable "Fields to set" as follows:
-| Field Name|Value|
-|----------|-----|
-| page|netdata-dashboard|
-| hostname|dashboard.my-netdata.io|
-| anonymizeIp|true|
-| title|Netdata dashboard|
-| campaignSource|{{machine_guid}}|
-| campaignMedium|web|
-| referrer|<http://dashboard.my-netdata.io>|
-| Page URL|<http://dashboard.my-netdata.io/netdata-dashboard>|
-| Page Hostname|<http://dashboard.my-netdata.io>|
-| Page Path|/netdata-dashboard|
-| location|<http://dashboard.my-netdata.io>|
+| Field name | Value |
+| -------------- | -------------------------------------------------- |
+| page | netdata-dashboard |
+| hostname | dashboard.my-netdata.io |
+| anonymizeIp | true |
+| title | Netdata dashboard |
+| campaignSource | {{machine_guid}} |
+| campaignMedium | web |
+| referrer | <http://dashboard.my-netdata.io> |
+| Page URL | <http://dashboard.my-netdata.io/netdata-dashboard> |
+| Page Hostname | <http://dashboard.my-netdata.io> |
+| Page Path | /netdata-dashboard |
+| location | <http://dashboard.my-netdata.io> |
In addition, the Netdata-generated unique machine guid is sent to GA via a custom dimension.
You can verify the effect of these settings by examining the GA `collect` request parameters.
-The only thing that's impossible for us to prevent from being **sent** is the URL in the "Referrer" Header of the browser request to GA. However, the settings above ensure that all **stored** URLs and host names are anonymized.
+The only thing that's impossible for us to prevent from being **sent** is the URL in the "Referrer" Header of the
+browser request to GA. However, the settings above ensure that all **stored** URLs and host names are anonymized.
## Anonymous Statistics Script
-Every time the daemon is started or stopped and every time a fatal condition is encountered, Netdata uses the anonymous statistics script to collect system information and send it to GA via an http call. The information collected for all events is:
+Every time the daemon is started or stopped and every time a fatal condition is encountered, Netdata uses the anonymous
+statistics script to collect system information and send it to GA via an http call. The information collected for all
+events is:
- Netdata version
- OS name, version, id, id_like
@@ -51,16 +60,34 @@ Every time the daemon is started or stopped and every time a fatal condition is
- Virtualization technology
- Containerization technology
-Furthermore, the FATAL event sends the Netdata process & thread name, along with the source code function, source code filename and source code line number of the fatal error.
+Furthermore, the FATAL event sends the Netdata process & thread name, along with the source code function, source code
+filename and source code line number of the fatal error.
-To see exactly what and how is collected, you can review the script template `daemon/anonymous-statistics.sh.in`. The template is converted to a bash script called `anonymous-statistics.sh`, installed under the Netdata `plugins directory`, which is usually `/usr/libexec/netdata/plugins.d`.
+To see exactly what and how is collected, you can review the script template `daemon/anonymous-statistics.sh.in`. The
+template is converted to a bash script called `anonymous-statistics.sh`, installed under the Netdata `plugins
+directory`, which is usually `/usr/libexec/netdata/plugins.d`.
-## Opt-Out
+## Opt-out
-To opt-out from sending anonymous statistics, you can create a file called `.opt-out-from-anonymous-statistics` under the user configuration directory (usually `/etc/netdata`). The effect of creating the file is the following:
+You can opt-out from sending anonymous statistics to Netdata through three different opt-out mechanisms:
-- The daemon will never execute the anonymous statistics script
-- The anonymous statistics script will exit immediately if called via any other way (e.g. shell)
-- The Google Tag Manager Javascript snippet will remain in the page, but the linked tag will not be fired. The effect is that no data will ever be sent to GA.
+**Create a file called `.opt-out-from-anonymous-statistics`.** This empty file, stored in your Netdata configuration
+directory (usually `/etc/netdata`), immediately stops the statistics script from running, and works with any type of
+installation, including manual, offline, and macOS installations. Create the file by running `touch
+.opt-out-from-anonymous-statistics` from your Netdata configuration directory.
-You can also disable telemetry by passing the option `--disable-telemetry` to any of the installers.
+**Pass the option `--disable-telemetry` to any of the installer scripts in the [installation
+docs](../packaging/installer/README.md).** You can append this option during the initial installation or a manual
+update.
+
+When using Docker, **set your `DO_NOT_TRACK` environment variable to `1`.** You can set this variable with the following
+command: `export DO_NOT_TRACK=1`. When creating a container using Netdata's [Docker
+image](../packaging/docker/README.md#run-netdata-with-the-docker-command) for the first time, this variable will disable
+the anonymous statistics script inside of the container.
+
+Each of these opt-out processes does the following:
+
+- Prevents the daemon from executing the anonymous statistics script.
+- Forces the anonymous statistics script to exit immediately.
+- Stops the Google Tag Manager Javascript snippet, which remains on the dashboard, from firing and sending any data to
+ Google Analytics.