Data collection for the CloudBees Analytics Plugin
- Data collected with every event
- Instance check-in data
- User signup data
- Setup wizard data
- Jenkins build completed data
- Jenkins Pipeline step completed
- Jenkins Declarative Pipeline syntax used
- Jenkins freestyle task completed
- Jenkins SCM checked out
- Jenkins Pipeline Policy Applied
- CloudBees High Availability (HA) usage
- Plugin version data
- Configuration as Code (CasC) for Masters usage
- CloudBees Slack Integration
- Inbound links
- CloudBees Microsoft Teams Integration
- Inbound links
- Beekeeper plugin exceptions
- Disabling data collection for the CloudBees Analytics Plugin
The CloudBees Analytics Plugin collects telemetry and metrics for analysis to help CloudBees make decisions about future product enhancements. The collected data is used to evaluate patterns of usage of our products.
Data collection is enabled by default, but you can disable it at any time.
For CloudBees CI, refer to Data collection for the CloudBees Analytics Plugin - Disabling data collection for the CloudBees Analytics Plugin to disable it.
For CloudBees Jenkins Distribution, refer to Data collection for the CloudBees Analytics Plugin - Disabling data collection for the CloudBees Analytics Plugin to disable it.
Data collected with every event
The following data is sent with every event that is captured:
Description | Anonymized | ||
---|---|---|---|
Instance ID |
Yes |
||
Product name |
No |
||
Product version |
No |
||
Organization licensed to use the product
|
No |
Instance check-in data
This event is sent at each initialization and every 24 hours after.
Description | Anonymized |
---|---|
The first installation date. |
No |
The length of time the instance has been running since the last reboot. |
No |
The number of licensed users. |
No |
The operating system where the instance is running. |
No |
The cloud provider where the instance is running. |
No |
The cloud orchestrator used in the cluster. |
No |
The distributable used in the cluster. |
No |
User signup data
This event is sent when the product is being licensed.
Description | Anonymized |
---|---|
The browser used to request the license. |
No |
The version of the browser used to request the license. |
No |
The operating system where the instance is running. |
No |
The cloud provider where the instance is running. |
No |
The cloud orchestrator used in the cluster. |
No |
The distributable used in the cluster. |
No |
Setup wizard data
A new event is sent when the user starts a new step of the Setup Wizard to identify the selections made during the installation.
-
Admin password step displayed
-
Login failed
-
Choose license type step displayed
-
Online evaluation license step displayed
-
Offline license step displayed
-
Manual license step displayed
-
License submit failed
-
Plugins installation options step displayed
-
Plugins selection step displayed
-
Custom plugins installation selected
-
Recommended plugins installation selected
-
Install plugins requested
-
Upgrade skipped
-
Admin user creation step displayed
-
Admin user created
-
Admin user creation failed
-
Confirm URL step displayed
-
Instance ready step displayed
-
Setup completed
Jenkins build completed data
This event is sent every time a build completes in Jenkins.
Description | Anonymized |
---|---|
The build duration in milliseconds. |
No |
The build number. |
No |
The result of the build. |
No |
The fully-qualified class name of the run that triggered the event (to identify the job type). |
No |
The fully-qualified class name of the multibranch project factory (to track usage of marker files vs normal multibranch projects) |
No |
For pipelines that are part of multibranch projects, the fully-qualified class name of the SCM used to check out the multibranch project from source control |
No |
A hashed name of the job from which the build was created. |
Yes |
(Optional) The durability level that was used for the build in Pipeline jobs. |
No |
(Optional) The fully-qualified class name of the FlowDefinition for the Pipeline (to identify the Pipeline type). |
No |
Whether the sandbox was enabled for the build in Pipeline jobs. |
No |
(Optional) A hashed multibranch Pipeline job name. |
Yes |
(Optional) A hashed organization folder name (only set on builds of jobs that are part of a multibranch project that is part of an organization folder). |
Yes |
(Optional) Either Scripted or Declarative, depending on the Pipeline. |
No |
(Optional) If a freestyle build, the count of upstream projects that feed into the build. |
No |
(Optional) If a freestyle build, the count of downstream projects that should be built when the build completes. |
No |
(Optional) If a Pipeline build and the CloudBees SCM Reporting plugin is in use, some generic information about how the branch source is configured for reporting and what kinds of notification are sent to the SCM. |
No |
Jenkins Pipeline step completed
This data is sent along with the Jenkins Build Completed event for Pipeline builds for every Pipeline step executed as part of the build.
Description | Anonymized |
---|---|
The number of the build that ran in the Pipeline step. |
No |
A hashed version of the name of the job that owns the build that ran the step. |
Yes |
A list of the names, but not the values, of the arguments passed to the step by the user. |
No |
The name of the step as written by a user in a Pipeline script. |
No |
The amount of time that the step spent paused while executing. |
No |
The artifact ID of the plugin in which the step is defined (to identify which steps are being used). |
No |
Jenkins Declarative Pipeline syntax used
This data is sent along with the Jenkins Build Completed event for every type of syntax used in Declarative Pipelines.
Description | Anonymized |
---|---|
The number of the build that ran the step. |
No |
A hashed name of the job from which the build that ran the step was created. |
Yes |
The name of the Declarative syntax used. For example, |
No |
The type of syntax that was used. The following syntax types are supported by Declarative:
Refer to the Pipeline syntax reference guide for detailed explanations of each type. |
No |
Jenkins freestyle task completed
This data is sent along with the Jenkins Build Completed event for every task executed as part of a freestyle build.
Description | Anonymized |
---|---|
The number of the build that ran the step in. |
No |
A hashed name of the job from which the build was created. |
Yes |
The fully-qualified class name of the freestyle task. For example, hudson.tasks.Shell. |
No |
The type of freestyle task: * build wrapper: pre/post actions performed for the build process * builder:BuildSteps that perform the actual build * publisher:BuildSteps that run after a build has been completed |
No |
Jenkins SCM checked out
This data is sent along with the Jenkins Build Completed event for every SCM that is checked out as part of the build.
Description | Anonymized |
---|---|
The number of the build in which the step ran. |
No |
A hashed name of the job from which the build was created. |
Yes |
The fully-qualified class name of the object used to check out from source control (to identify which SCM is used). |
No |
The context in which the checkout was performed. For example, checkout performed in a build that is not in a Pipeline, checkout step within a Pipeline build, etc.). |
No |
Jenkins Pipeline Policy Applied
This data is sent for every pipeline policy rule that was applied to a completed build.
Description | Anonymized |
---|---|
The number of the build which the policy was applied. |
No |
A hashed name of the job from which the build was created. |
Yes |
A hashed name of the policy from which the rule belonged to. |
Yes |
The name of the policy rule that was applied to the run. |
No |
A short description of the rule violation that occured (if there was one). |
No |
Action performed when a violation occurs (warn or fail). |
No |
CloudBees High Availability (HA) usage
This event is sent at each initialization and every 7 days after.
This only applies to CloudBees CI on traditional platforms. |
Description | Anonymized |
---|---|
True if the instance has configured CloudBees HA, otherwise False is sent. |
No |
Plugin version data
This event is sent for each installed plugin at each initialization and every 7 days after.
Description | Anonymized |
---|---|
The artifact ID of the plugin. |
No |
The version of the plugin. |
No |
Configuration as Code (CasC) for Masters usage
This event is sent at each initialization and every 7 days after.
Description | Anonymized |
---|---|
Has the current master been provisioned using CasC for Masters? (yes/no value) |
No |
CloudBees Slack Integration
Once the CloudBees Slack Integration plugin is installed, it will start sending metrics regarding its usage. CloudBees does not collect critical configuration information and all data collected is anonymized. The only data collected in every event is who will receive the message. |
Slack message sent
This event is sent every time a Personalized Slack Message with the build status is delivered to the author of the Pull Request.
Description | Anonymized |
---|---|
Slack identifier to whom the message is sent. |
Yes |
If the message is sent after the build is finished or after a single stage is completed. |
No |
Indicates if the message is new, if it is updating a previous one, or if it is a reply. |
No |
User subscribed
This event is sent every time a user is subscribed or unsubscribed to receive Personalized Slack Messages.
Description | Anonymized |
---|---|
Slack identifier of the user who is subscribing or unsubscribing. |
Yes |
If the user has subscribed or unsubscribed to received Personalized Slack Messages. |
No |
If the user has self-configured or it has been an administrator user who did it. |
No |
Plugin configuration
This event is sent at each initialization and every 7 days after.
Description | Anonymized | ||
---|---|---|---|
If the CloudBees Slack Integration plugin is properly configured, in other words the configuration includes a valid Slack token.
|
No |
||
Total number of configured users in CloudBees Slack Integration plugin. |
No |
||
Total number of configured users that are subscribed, in other words users who will receive Personalized Slack Messaging notifications. |
No |
||
Total number of configured users that are unsubscribed, in other words users who will not receive Personalized Slack Messaging notifications despite being registered. |
No |
Rebuild button selected
This event is sent when the Rebuild button within the CloudBees Slack Integration message is selected.
Description | Anonymized |
---|---|
Slack identifier of the user who selected the Rebuild button. |
Yes |
If rebuild action was successful or not. |
No |
Job for which the new build has been queued. |
Yes |
Inbound links
When CloudBees CI generates a link to itself for upload to an external system, such as a GitHub commit status, it may encode a category identifier in the link and send an event if and when it is clicked.
Description | Anonymized |
---|---|
Category of link being followed (such as failing test results in GitHub) |
No |
CloudBees Microsoft Teams Integration
Once the CloudBees Microsoft Teams Integration plugin is installed, it will start sending metrics regarding its usage. CloudBees does not collect critical configuration information and all data collected is anonymized. This plugin basically configures pairs of Microsoft Teams webhooks and SCM usernames. Then, when a Pull Request is triggered, if it matches an SCM username, that webhook will be used for sending a message. |
CloudBees Microsoft Teams Integration message sent
When a build finished, if it is a Pull Request and the configuration matches a message is sent.
Description | Anonymized |
---|---|
Microsoft Teams identifier to the Webhook the message is sent. |
Yes |
Jenkins Id who added the web hook |
Yes |
SCM username for the web hook |
Yes |
If the message is sent after the build is finished or after a single stage is completed. |
No |
Indicates if the message is new, if it is updating a previous one, or if it is a reply. |
No |
User subscribed
This event is sent every time a user is subscribed or unsubscribed to receive CloudBees Microsoft Teams Integration messages.
Description | Anonymized |
---|---|
Teams identifier of the user who is subscribing or unsubscribing. |
Yes |
SCM username for the web hook |
Yes |
If the user has subscribed or unsubscribed to received CloudBees Microsoft Teams Integration messages. |
No |
If the user has self-configured or it has been an administrator user who did it. |
No |
Plugin configuration
This event is sent at each initialization and every 7 days after.
Description | Anonymized |
---|---|
Total number of configured users in CloudBees Microsoft Teams Integration plugin. |
No |
Total number of configured users that are subscribed, in other words users who will receive CloudBees Microsoft Teams Integration notifications. |
No |
Total number of configured users that are unsubscribed, in other words users who will not receive CloudBees Microsoft Teams Integration notifications despite being registered. |
No |
Inbound links
When CloudBees CI generates a link to itself for upload to an external system, such as a GitHub commit status, it may encode a category identifier in the link and send an event if and when it is clicked.
Description | Anonymized |
---|---|
Category of link being followed (such as failing test results in GitHub) |
No |
Beekeeper plugin exceptions
If the CloudBees Assurance Program is enabled on an instance, this event is sent weekly to indicate if Beekeeper plugin exceptions were allowed or disallowed on that instance.
Disabling data collection for the CloudBees Analytics Plugin
You can disable data collection from within Jenkins.
To disable data collection:
-
From Jenkins, go to Manage Jenkins > Configure System.
-
Under Usage Statistics, deselect Help make CloudBees <product name> better by sending telemetry and metrics to evaluate patterns of usage.
The <product name> will depend on what product you are using. CloudBees by default will display.
Alternatively, disable the data collection by adding the -Dcom.cloudbees.analytics.gatherer.Sender.disabled=true
system property to your launch scripts.