streamlit / streamlit

Streamlit — A faster way to build and share data apps.
https://streamlit.io
Apache License 2.0
34.3k stars 2.96k forks source link

Streaming analytics / telemetry to own database #5996

Open ttamg opened 1 year ago

ttamg commented 1 year ago

Problem

Firstly thanks for creating a fantastic application and great documentation too.

I see that telemetry is captured by default and passed to the Streamlit servers. In the config it can be switched off as is well documented.

For many enterprise tasks, it is at minimum a soft requirement to push telemetry information to an enterprises' own analytics system, and a hard requirement not to push telemetry to another system.

Also as mentioned in issue #4747 pushing to US servers is a no-no without active consent under European GDPR.

Solution

Is open telemetry a feature you will considering adding?

One quick idea would be to allow users to configure another Segment.io account key. This would be a very simple fix to Segments.ts and the config. From a business perspective I would expect Segment.io would love that and provide more value to Streamlit in return. Would you consider that?

I can of course fork the repo myself and adjust the relevant files (Segment.ts) to push analytics elsewhere but that feels a bit of a hack if you have plans to provide a more open telemetry solution soon instead.

Thanks

If you'd like the Streamlit team to prioritize this feature request, please use the 👍 (thumbs up emoji) reaction in response to the initial post.

carolinedfrasca commented 1 year ago

Hey @ttamg, thank you for contributing this enhancement request! We don't have immediate plans to launch a more open telemetry solution, but I'd encourage interested community members to upvote this request so that we can prioritize this appropriately based on demand.

samkass commented 8 months ago

I was surprised that Streamlit injects analytics into my own app, even if run on my own computer, or run on my own Google Cloud account which reports its activity to your servers by default. Besides seeming HIGHLY inappropriate that this is on by default, it is a really commonly requested feature among the community to have our own analytics. Perhaps if you don't want to offer st.javascript or the other many good suggestions, you allow a headers.html snippet in the .streamlit directory which gets injected into and will allow us to do our own analytics/adsense/authentication?

andreped commented 7 months ago

Besides seeming HIGHLY inappropriate that this is on by default,

Seems very strange to me that it is enabled by default. I have accidentally used it for some industry project and I was not even aware until I accidentally came across it in the documentation when reading about something else.

I would highly encourage the Streamlit team to disable it by default, as I think it does more harm than good. Any thoughts on that, @carolinedlu?