CloudBees Analytics architecture

Developer productivityData analytics

With CloudBees Analytics, track your workload changes and see how efficient, clean, and secure your setup is. Through CloudBees Analytics dashboards, enterprises have the ability to detect:

  • Which CloudBees CI controllers that are unhealthy or idle.

  • Where CloudBees CI plugins are used and their support level.

  • Builds in progress that are deteriorating the quality of the service, and more.

While CloudBees Analytics provides several out-of-box dashboards and report templates, you can create reports and dashboards to visualize your own custom data or to export this data using APIs.

CloudBees Analytics architecture for CloudBees CD/RO

The architecture for CloudBees Analytics with the CloudBees CD/RO capability is as follows:

Where:

1

The CloudBees Analytics server collects data from the following sources:

  • Backend: The CloudBees CD server backend collects build, deployment, pipeline, and release data.

  • Plugin: The set of plugins bundled with CloudBees CD integrates with 3rd-party DevOps tools to collect defect, feature, incident, and quality data.

  • API: The sendReportingData API allows you to inject your own custom data into the Elasticsearch database.

See Sending data from an external source for further information.

2

Collected data is stored in the Elasticsearch database. See Elasticsearch basics for information on accessing the Elasticsearch data base directly.

3, 4

The report object definition, together with dashboard filters, defines the data set to extract from the Elasticsearch database. See Report object type reference for available report object definitions bundled with CloudBees Software Delivery Automation.

5

The report engine sends the processed data the dashboard widget for rendering. Several report definitions are provided to support out-of-box dashboards. Additionally, see Creating a report and Creating a dashboard to create custom reports and dashboards.

CloudBees Analytics architecture for CI data

The architecture for CloudBees Analytics for CloudBees CI data is as follows:

Where:

1

CloudBees CI sends build and other data to the CloudBees Software Delivery Automation server. In turn, it is stored into the CloudBees Analytics server Elasticsearch database where it becomes available for ingestion by reports and dashboards.

See Sending data from an external source for further information.

2

Collected data is stored in the Elasticsearch database. See Elasticsearch basics for information on accessing the Elasticsearch data base directly.

3, 4

The report object definition, together with dashboard filters, defines the data set to extract from the Elasticsearch database. See Report object type reference for available report object definitions bundled with CloudBees Software Delivery Automation.

5

The report engine sends the processed data the dashboard widget for rendering. CloudBees Software Delivery Automation bundles several report definitions to support out-of-box dashboards. Additionally, see Creating a report and Creating a dashboard to create custom reports and dashboards.

Glossary

  • Dashboard: Top-level, multi-widget view with related visualizations of interest. Several dashboards are included, out-of-box. See Dashboard Reference for a list of pre-configured dashboards bundled with CloudBees Software Delivery Automation.

  • Widget: A dashboard tile for UI visualization of report metrics. See dashboards:adding-widgets.adoc#adding-widgets for further information.

  • Visualization: Specification of data to show in the UI.

  • Report: The definition of the set of results from which a widget is built. Contains the ElasticSearch report definition. See Elasticsearch Basics for further information.

  • Reporting object type: Type of object on which to report. Several report object types, out-of-box. See Report Object Type Reference for available report object definitions

  • Reporting object attribute: Specific metadata to report on and visualize.