Open xuhcc opened 4 years ago
That's right @xuhcc, {analytics: {enabled:false}}
disables it. We'll make it clear in the documentation.
We'll also make clear what we are sending to the servers. That is:
Let us know If you have further questions.
A google analytics hit that includes your os, node version, builder version, and the task you are running (custom task names are all replaced with something like "custom-task").
Oh, so there's another tracker?
Worth noting that IP address of a user also becomes known to data collecting services.
For others who are reading this thread: data is being sent to www.google-analytics.com
(source: https://github.com/nomiclabs/buidler/blob/buidler-core-v1.4.4/packages/buidler-core/src/internal/cli/analytics.ts#L40)
Oh, so there's another tracker?
Sentry for errors, google analytics for users. Both can be disabled with the same setting.
Worth noting that IP address of a user also becomes known to data collecting services.
That's a good point. We'll also document that!
{analytics: {enabled:false}} disables it. We'll make it clear in the documentation. We'll also make clear what we are sending to the servers. That is:
Hardhat now asks user for consent, that's a good move. But it seems that documentation has not been updated.
That setting doesn't exist anymore in the project config. It's now a global per-user setting that defaults to false.
I know, but you also expressed intent to document what data is being collected. It is not particularly important though because the analytics are opt-in now, so feel free to close this issue.
Oh, sorry. I thought you were referring to the first part of the comment. We'll make that clear in the docs.
That setting doesn't exist anymore in the project config. It's now a global per-user setting that defaults to false.
~What's the global per-user settings and how can I configure it?~ It's the telemetry-consent.json
file hidden deep in local configuration.
I've looked into the code and the telemetry is offered to the user only when:
When the telemetry isn't offered, it's disabled by default.
It's the
telemetry-consent.json
file hidden deep in local configuration.
In case anyone is looking for it, on macOS it's located in ~/Library/Preferences/hardhat-nodejs/telemetry-consent.json
How do you disable global telemetry?
Run npx hardhat --verbose
, and you are gonna see a log like this
hardhat:core:global-dir Looking up Client Id at /Users/pato/Library/Application Support/hardhat-nodejs/analytics.json +0ms
Delete that folder.
There should be a way to disable analytics, but I can't find it in the documentation. I guess users have to add
analytics: {enabled: false}}
to their buidler config?Though I'd recommend DNS blocking as a more robust solution. The server to which data is being sent is
o385026.ingest.sentry.io
(source: https://github.com/nomiclabs/buidler/blob/buidler-core-v1.4.4/packages/buidler-core/src/internal/sentry/reporter.ts#L13)