Telemetry in PCF Dev

Page last updated:

This topic describes telemetry in PCF Dev.


Pivotal uses telemetry to help us understand how PCF Dev is being used. We value our users privacy, and all telemetry is completely anonymous. In addition, users must opt in to telemetry collection from the CF Dev tool.

There is no way for anyone with the telemetry to identify who is using the CF Dev tool. In an effort to make our data as transparent as possible, we will be publishing aggregated anonymous usage data to this topic periodically to help our user community understand how the tool is being used.

Opt In to Telemetry Collection

When you run cf dev start for the first time, you will be prompted to opt in to capturing analytics.

You can turn telemetry on or off at any time by by running cf dev telemetry --on/off.

Telemetry Data

Pivotal collects anonymous usage telemetry in order to better understand what features are most frequently used. This will in turn help us improve those features, or provide new features, moving forward.

Every usage event that we capture includes the following eight data points:

  • Event: For more information about the event data point, see Event Data Point.
  • Data: Anonymous metadata associated with events.
  • Timestamp: The UTC timestamp when the event occurred.
  • Anonymous ID: A cryptographically (SHA256) anonymous and unique ID for a machine. This metric will not be published.
  • Operating System: The operating system where the event occurred.
  • Build: The build of the CLI tool in which the event occurred.

We store this data locally until we push it to our servers for storage and analysis.

Event Data Point

The event data point is collected to understand how the CLI is used. We only capture events if they are entered by a user or when they encounter an error with the tool.

The following user events are captured:

  • Start Begin: When a user runs cf dev start
  • Start End: When cf dev finishes starting up
  • Error: When a user encounters an error while using the tool
  • Stop: When a user runs cf dev stop
  • Uninstall: When a user uninstalls the cf CLI plugin by running cf uninstall-plugin cfdev
  • App Created: When a user pushes an app using cf push APP-NAME
  • Route Created: When a user creates a route using cf create-route ROUTE-NAME
  • Deployed Service: When a user deploys a service after start using cf deploy-service SERVICE-NAME
  • Service Created: When a user creates a service instance using cf create-service SERVICE-PLAN SERVICE-INSTANCE-NAME
  • User Provided Service Created: When a user creates a user provided service using cf create-user-provided-service SERVICE-NAME
  • App Bound To Service: When a user binds an app to a service using $ cf bind-service APP-NAME SERVICE-INSTANCE-NAME
  • App Restage: When a user restages an app using cf restage APP-NAME
  • Org Created: When a user creates an org using cf create-org ORG-NAME
  • Space Created: When a user creates a space using cf create-space SPACE-NAME
  • User Created: When a user creates a user using cf create-user USERNAME PASSWORD
  • Bosh: When a user accesses the BOSH director using cf dev bosh
  • Telemetry Off: When a user turns telemetry off using cf dev telemetry --off

Collection of Data

Pivotal collects data locally and periodically sends it to a public data store. If telemetry is turned off, no attempt to capture or send data will be made.

Use of Data

Our goal is to use this data to better understand how our users use the product. We are not using it to track user behavior. We plan to release aggregate usage statistics to the developer community every quarter so users can get a better understanding of how the tool is being used in the community.