Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GDPR: Disable grafana agent analytics by default and make them OPT-IN only. #317

Open
Sommerwiesel opened this issue Oct 28, 2023 · 6 comments
Labels
proposal A proposal for new functionality.

Comments

@Sommerwiesel
Copy link

Sommerwiesel commented Oct 28, 2023

Background

The grafana agent sends analytics to stats.grafana.org by default. This is neither documented in the installation site of the grafana cloud nor is this a good practise according to the gdpr.
Moreover, this behaviour cannot be disabled in the config file and requires a start parameter to be set.
This, on 90%+ of all Linux systems, requires a systemd unit overwrite, something that should be the last resort.
Overall, this is a bad practise that should be changed asap.

Proposal

Change the default of grafana agent to not send any kind of analytics.
Make the setting OPT-IN via config file.

@Sommerwiesel Sommerwiesel added the proposal A proposal for new functionality. label Oct 28, 2023
@rfratto
Copy link
Member

rfratto commented Oct 30, 2023

I understand your frustrations here, and I'm sorry that the collection of usage stats surprised you.

We collect anonymous usage stats to allow us to have better insights about how Grafana Agent is being used, and how new versions are being adopted. We do document it and want to be transparent about our collection, but it sounds like we need to move this information to a more discoverable page since you weren't able to easily locate it (cc @clayton-cornell).

I tend to agree that opt-in analytics are preferable. However, we have to strike a balance that allows us to have enough usage stats that allow us to make informed decisions. As a system daemon which may be automatically provisioned on thousands of machines, Grafana Agent can't simply ask the user for sending usage stats, unlike what you'd see with software that users directly interact with.

We chose the opt-out approach because we think provides a better balance where Grafana Agent developers are able to get useful insights about the general usage of their software, while still allowing privacy-conscious users to retain control over their data.

I'm open to finding better ways to collect usage stats that still allow us to make informed decisions, but I don't think switching to opt-in will allow us to do that. One potential long-term option may be to find a way to make these choices at install- or provision-time so whether usage stats are sent is always explicitly chosen by the user.

As for GDPR: because the usage stats are anonymous, we don't believe this is a GDPR issue.

@Sommerwiesel
Copy link
Author

Sommerwiesel commented Oct 30, 2023

Hey @rfratto and thanks for the detailed reply.

I understand that you want to be informed about usage of your software, it is, after all, the best way to focus further development and get notified about potential problems. As a devops myself I understand the struggle with getting users to agree to share usage data thesedays, especially after the world has finally caught up with data protection laws.

However, I still don't think what you're doing right now is the best you could do and it has almost put me off from using grafana. I was a little bit salty, I must admit that. But since it's still the best tool to use, I will continue using it. :P

What I really would like to see changed about this is the following:

  • Change it so that disabling the reporting does not require a systemd service override. It should be possible to disable the reporting via the yaml config file. You don't have to include the line by default, just make it possible.

  • The way the grafana agent (on Linux) is installed is via executing the script located at https://storage.googleapis.com/cloud-onboarding/agent/scripts/grafanacloud-install.sh. You could easily add a line in that script that asks for the sending of usage statistics. I know, you said, you'd prefer opt-out, but I honestly don't think this is a good practise. I know many software devs that have changed this to opt-in after negative user feedback, sentry for example. And I understand that opt-in will probably loose you the majority of users sending these reports. For now, at least think about the first bullet point and I will be happy.

Cheers and have a nice week :)

Update: lots of typos

@rfratto
Copy link
Member

rfratto commented Oct 30, 2023

Change it so that disabling the reporting does not require a systemd service override. It should be possible to disable the reporting via the yaml config file. You don't have to include the line by default, just make it possible.

Yes, supporting configuring/disabling it through the config file is definitely something we can do. We'll likely start with supporting it via both the flag and the config file, and gradually phase out the flag over time so there's not two ways of doing it.

As I already mentioned, we'll still improve our documentation to make it more clear that usage stats are enabled.

Thanks for your feedback!

@jkroepke
Copy link
Contributor

  • not require a systemd service override

It doesn't. If you are using the flow deb/rpm packages. The provided systemd has EnvironmentFile and $CUSTOM_ARGS defined: https://github.com/grafana/agent/blob/81c4b051fe71f2724af6d4a3583a2304d38efae2/packaging/grafana-agent-flow/rpm/grafana-agent-flow.service#L13

You could write the --disable-reporting flag to /etc/sysconfig/grafana-agent-flow CUSTOM_ARG which should be sufficent.

On Windows, the CLI arguments needs to be changed on registry.

@clayton-cornell
Copy link
Contributor

clayton-cornell commented Oct 31, 2023

The first pass at making the current state of the Data Collection more prominent is in this PR: grafana/agent#5656

@Sommerwiesel
Copy link
Author

Great, thank you :)

@rfratto rfratto transferred this issue from grafana/agent Apr 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
proposal A proposal for new functionality.
Projects
Status: Hold
Development

No branches or pull requests

4 participants