Cloud Foundry
The end of life (EOL) date for Cloud Foundry plugin is 31 May 2021. This documentation is now archived and is no longer updated.
Overview
The Cloud Foundry Collection Agent plug-in collects logs, metrics and events from Cloud Foundry environments, using the Cloud Foundry Loggregator. This plug-in is compatible with both the open-source and commercially licensed editions of Cloud Foundry.
The Cloud Foundry Loggregator collects logs and metrics from applications deployed in a Cloud Foundry environment and from platform components. The Loggregator also collects health metrics for all virtual machines. The data collected by the Loggregator can be accessed by external applications through the Firehose API endpoint.
The Cloud Foundry plug-in receives data from the Loggregator Firehose and generates the following types of datapoints:
- Container Metrics — container level resource usage.
- Counter Events — cluster level counter metrics.
- Logs — application and container logs.
- Value Metrics — cluster level gauge metrics.
The Cloud Foundry plug-in will also attempt to ingest any additional metrics supplied by the Firehose that follow the same formatting.
This plugin also requires an additional licence to use. Please contact your ITRS Account Manager or ITRS Sales.
Dimensions
All datapoints generated by the Cloud Foundry plug-in have the following Cloud Foundry specific dimensions:
deployments
origin
job
ip
Datapoints associated with a hosted application have additional dimensions:
org_name
space_name
application_name
cf_instance_index
Run multiple instances
In most cases a single instance of the Cloud Foundry plug-in is sufficient to monitor an entire Cloud Foundry estate. However in some cases it is useful to deploy multiple instances.
Multiple Cloud Foundry users
You can use multiple Cloud Foundry plug-ins to connect to Cloud Foundry with multiple users. This is useful when access permissions are split across many users. The Collection Agent can aggregate data from multiple plug-ins, connected as different users, that each provide a subset of the required Firehose data.
Scaling
In especially large estates, where the volume of data is substantial, you can use multiple Cloud Foundry plug-ins to distribute the load. For example you can filter the data received by multiple Cloud Foundry plug-ins by dimension, so that each processes data from a specific application or dimension.
Configuration reference
The Cloud Foundry Collection Agent plug-in is configured using a YAML
file that specifies the connection information for the Loggregator Firehose API endpoint.
Option | Description |
---|---|
api-host |
Address of the Firehose API endpoint. Mandatory: Yes |
api-username |
Username for connecting to the Firehose API endpoint. Mandatory: Yes |
api-password |
Password for the connecting user. You must ensure that the user has permissions to access all metrics that you want to monitor. Mandatory: Yes |
skip-ssl-validation |
Disable TLS/SSL certificate validation. Mandatory: No Default: |
enable-logs |
Enable log collection. If this option is set to Mandatory: No Default: |
subscription-id |
Firehose unique subscription ID. Cloud Foundry requires a unique subscription ID for each connection to the Loggregator Firehose. By default an instance of the Cloud Foundry plug-in generates a random ID. If multiple instances of the Cloud Foundry plug-in are required to access the same data you should specify the same subscription ID in each. Mandatory: No Default: |
Below is an example YAML file which may require some changes for your project’s configuration:
collectors: - type: plugin class-name: CloudFoundryCollector # CF API hostname (required) api-host: api.dev.cfdev.sh # CF API username (required) api-username: admin # CF API password (required) api-password: admin # Disable SSL certificate validation when connecting to API. Defaults to false. skip-ssl-validation: false # Enable collection of logs. Defaults to true. enable-logs: true
Load an include file
Example include files are provided for Gateway configuration. To load an include file into the Gateway Setup Editor:
- Open the Gateway Setup Editor.
- In the Navigation panel, click Includes to create a new file.
- Enter the location of the file to include in the Location field.
- Update the Priority field. This can be any value except
1
. If you input a priority of1
, the Gateway Setup Editor returns an error. - Expand the file location in the Include section.
- Select Click to load.
- Click Yes to load the new include file and save your setup.
The example include file for the Cloud Foundry Collection Agent plug-in can be downloaded from the ITRS Github.