The Serverless Framework development is driven by usage and demand of our community. We understand what users are doing by collecting various events and usage data, and we use this data to iterate and improve Serverless based on this gained insight. This includes things like providers, runtimes, event types, function memory size and timeout, plugins installed, and a bit about the environment of the CLI like operating systems, within a CI system or docker container, node.js version, etc. If you'd prefer, you can disable usage tracking.
We do not use event payloads to collect any identifying information, and the data is used in aggregate to understand the community as a whole. The one exception is if you are logged in to the Serverless Dashboard we collect information about your logged in user such as your
userId, more information can be found in the signed in to platform section.
slstats plugin offers functionality to globally disable tracking via a property
~/.serverlessrc. This file is automatically created when you install the framework.
serverless slstats --disable to disable usage tracking
serverless slstats --enable to enable usage tracking
While the command does need to be run from within a serverless project directory, it is a global configuration that only need be run a single time for your CLI user environment.
Once disabled, usage events will no longer be sent from any of your serverless CLI usage. While the command does need to be run from within a serverless project directory, it is a global configuration.
The following is a list of the events that we collect:
If you are signed in to the Serverless Dashboard, we do receive your userId as part of the event payloads. We can use this information to understand your tenant and users interactions with the CLI and building services.
If you are not signed in, we do not send any identifying information, such as an userId, within any of the event payloads.