Moviri Integrator for TrueSight Capacity Optimization - Pivotal Cloud Foundry

"Moviri Integrator for BMC  TrueSight Capacity Optimization – PivotalCF" is an additional component of BMC TrueSight Capacity Optimization product. It allows extracting data from the Pivotal Cloud Foundry a unified, multi-cloud platform to manage enterprise applications at scale.  Relevant capacity metrics imported into BMC TrueSight Capacity Optimization, which provides advanced analytics over the extracted data in the form of an interactive dashboard, the Pivotal Cloud Foundry View.

The integration supports the extraction of both performance and configuration data across the different components of the Pivotal Cloud Foundry Application Service (PAS) and can configurable via parameters that allow entity filtering and many other settings. The connector can also replicate relationships and logical dependencies among entities such as applications, organizations, and virtual machines. 

For the virtual machines under the Pivotal Cloud Foundry Application Service and Isolation Segment, Pivotal CF connector extracts component virtual machines. In the Pivotal CF extractor, we categorized them into two parts, the Diego Node, and PCF Services. Diego Nodes, categorizes the component virtual machines contributed to Pivotal Cloud Foundry Diego component, and other component VMs are counted as PCF Services. 

For the applications under the Pivotal Cloud Foundry domain, Pivotal CF connector extracts both system default applications, as long as the customized applications, and arrange them based on the hierarchy of organization, space and applications, in aligned with the Pivotal Cloud Foundry application manager. 

This documentation is targeted at BMC TrueSight Capacity Optimization administrators, in charge of configuring and monitoring the integration between BMC TrueSight Capacity Optimization and Pivotal Cloud Foundry.


The latest version of the integrator Pivotal Cloud Foundry is available on EPD. Click the Moviri Integrator for TrueSight Capacity Optimization link. In the Patches tab, select the latest version of TrueSight Capacity Optimization. This ETL is compatible with TrueSight Capacity Optimization 20.02 and onward.


Step I. Complete the preconfiguration tasks

Step II. Configure the ETL

Step III. Run the ETL

Step IV. Verify the data collection


Step I. Complete the Pre-Configuration Tasks

StepsDetails
Check if the required API version is supported
  • Pivotal CloudFoundry is tested using 2.7
Generate access to Pivotal Cloudfoundry

Pivotal CloudFoundry uses username/password to authentication and authorization. Upon creation, each user will generate a read-only privileges for querying a set of specific API endpoints. 

Please use the following example to create the user from Pivotal Cloudfoundry UAA using UAA CLI - uaac.

Create a user with log cache read right and cloud foundry API read rights: logs.admin and doppler.firehose for log cache api (click here for more information) and cloud_controller.global_auditor for cloud foundry api (click here for more information).

Create the user:

First, log in to uaac use admin client and its credentials, note that the admin client needs to have the right to create users:

> uaac target uaa.<your_domian>
> uaac token client get admin -s <admin_client_token>

Then, create a user tsco with password

> uaac user add tsco -p <password> --emails tsco@example.com

Then, add scopes "doppler.firehose", "logs.admin" and "cloud_controller.global_auditor", if scopes not exist:

> uaac group add cloud_controller.global_auditor
> uaac group add logs.admin
> uaac group add doppler.firehose

Finally, add the user "tsco" into the scopes as member:

> uaac member add cloud_controller.global_auditor tsco
> uaac member add doppler.firehose tsco
> Uaac member add logs.admin tsco

check Pivotal cloudfoundry's documentations for more information about UAA and how to create user: https://docs.pivotal.io/platform/application-service/2-7/uaa/uaa-user-management.html

Test the user's access right:

In order to get access to Log cache API and cloud foundry API, the uaa API will generate a authorization token for the user "tsco" for accessing. usually, the token will expire very soon. Therefore, test the user's access right should be executed immediately after call the UAA API to generate token:

The following curl command shows how to generate a token based on the user's id and password:

> curl -v -k -XPOST -H"Application/json" -u "cf:" --data "username=tsco&password=<password>&grant_type=password" https://uaa.<your-domain>/oauth/token


{"access_token":"<token>", "token_type":"bearer", ....}

Now, Use the token to test the access for Log cache api:

> curl "https://log-cache.<your-domain>/api/v1/read/rep" -k -H "Authorization: Bearer <token>"


{"envelopes":{"batch":[{"timestamp":"1578235197085691442","source_id"...}

Now, Use the same token to test the access for cloud foundry api:

curl "https://api.<your-domain>/v2/apps" -H "Authorization: Bearer <token>"
{
  "total_results": 18,
  "total_pages": 1,
  "prev_url": null,
  "next_url": null,
  "resources": [
    {
      "metadata": {
        "guid": ".....
}
(Optional) Configure to use CID

CID is extracted from Opsman API, If want to reconsile PCF Services and PCF Nodes with VMWare vms and AWS vms, an Opsman API account wit minimal restricted view privelldge should be configured:

To generate the user with read rights for Ops manager API:

1. using uaac tool to connect to ops manager FQDN

uaac target "https://<OPSMAN_FQDN>/uaa" --skip-ssl-validation

2. login as admin or any users with rights to create users

uaac token owner get

Client ID:  opsman

Client secret:<press enter>

User name:  <username> 

Password:  <password>

-----------------------------------

Unknown key: Max-Age = 172800

Successfully fetched token via owner password grant.

Target: https://opsman.pcf.moviri-integrations.com/uaa

Context: admin, from client opsman

-------------------------------------

3. Create a user with a password, for example opstsco

uaac user add opstsco -p <enter a password for this user> --emails example@example.com 

-------------------------------------

user account successfully added

-------------------------------------

4. Add opsman.restrcted_view groups if not exists

uaac group add opsman.restricted_view 

5. Add the user opstsco to the group

uaac member add opsman.restricted_view opstsco 

6. Run the following curl command to get the access token for user opstsco, password is the one we created on Step3 above;

Save the access token from the response

Or for testing purposes, just run uaac command to get the access token:

uaac token client get opstsco

uaac context

Alternatively to step 3,4,5,6 we can use client Id and secret, following the steps:

  1. The same as step 1 above

  2. The same as step 2 above

  3. Run the following command to create a client id and password

uaac client add <clientID> --authorized_grant_types client_credentials --authorities opsman.restricted_view --secret <ClientSecret>

  1. Run the following command to test if there’s access token

curl -XPOST -H "Application/json" --data "client_id=<clientID>&client_secret=<clientSecret>&grant_type=client_credentials" "https://opsman.pcf.moviri-integrations.com/uaa/oauth/token" -k



Test the curl commands that is used in the connector:

1. Run the following curl command, use the access token grabbed from step1

curl "https://<OPSMAN_FQDN>/api/v0/deployed/products" -H "Authorization: Bearer <Access Token>"  -k

2. Run the following curl command, use the access token grabbed from step1, Product_Id here is the deployment guid.

curl "https://<OPSMAN_FQDN>/api/v0/deployed/products/<Product_Id>/status" -H "Authorization: Bearer <Access Token>" -k


Step II. Configure the ETL

  1. In the console, navigate to Administration > ETL & System Tasks, and select ETL tasks.
  2. On the ETL tasks page, click Add > Add ETL. The Add ETL page displays the configuration properties. You must configure properties in the following tabs: Run configuration, Entity catalog, Connection, and PCF Connection, PCF Extraction Filters
  3. On the Run Configuration tab, select Moviri - PivotalCF Extractor from the ETL Module list. The name of the ETL is displayed in the ETL task name field. You edit this field to customize the name.
  4. Click the Entity catalog tab, and select one of the following options:
    • Shared Entity Catalog:
      • From the Sharing with Entity Catalog list, select the entity catalog name that is shared between ETLs.
    • Private Entity Catalog: Select if this is the only ETL that extracts data from the Pivotal CF resources.
          1. Click the Connection tab, and configure the following properties:

            Property Name

            Value Type

            Required?

            Default

            Advanced

            Description

            PCF Connection

            Pivotal CloudFoundry domain

            Stringyes
            noThe domain of your Pivotal CLoud Foundry. Eg: examplepcf.com
            Pivotal CloudFoundry usernameStringyes
            noThe username of the user has the correct access right
            Pivotal CloudFoundry passwordStringyes
            noThe password of the user has the correct access right
            Proxy server hostStringno
            noIf proxy is used, filling this proxy server's host. Only "http" is supported.
            Proxy server portNumberno
            noIf proxy is used, filling this proxy server's port number.
            Proxy server userStringno
            noif proxy is used, filling this proxy server's user name.
            Proxy server passwordStringno
            noIf proxy is used, filling this proxy server's user password

            PCF Extraction Filter

            Data resolution

            Optionyes1 hournoData resolution of the improted data. Options are 5 minutes, 15 minutes, and 1 hour
            Select only Applications on the following organizations, use GUID (; separated)textno
            noApplication whitelist. Show only applications from the following organizations. Use organization GUID. Separate each organizations GUID using ";". 
            Select only Applications on the following organizations, use name (; separated)textno
            yesApplication whitelist. Show only applications from the following organizations. Use organization Name. Separate each organizations name using ";". 
            Select only Applications in the following spaces, use GUID (; separated)textno
            noApplication whitelist. Show only applications from the following spaces. Use space GUID. separate each space GUID using ";".
            Select only VMs in the following deployments (; separated)textno
            noVirtual machine whitelist. Show only virtual machine's from the following deployments, separate each deployment using ";".
            Exclude any Applications on the following organizations, use GUID (; separated)textno
            noApplication blacklist. Exclude only applications from the following organizations. Use organization GUID. Separate each organizations GUID using ";". 
            Exclude any Applications on the following organizations, use name(; separated)textno
            yesApplication blacklist. Exclude only applications from the following organizations. Use organization Name. Separate each organizations name using ";". 
            Exclude any Applications in the following spaces, use GUID (; separated)textno
            noApplication blacklist. Exclude only applications from the following spaces. Use Space GUID. Separate each space GUID using ";". 
            Exclude any VMs in the following deployments (; separated)textno
            noVirtual machine blacklist. Exclude only virtual machines from the following deployments. Separate each deployment using ";".
            Import vm list, leave empty if import allselectionnoemptyyesSelect which types of virtual machines you want to import. If want to import all, leave this field empty.
            Do you want to reconcile vms with other entities using CID?OptionnononoIf selected to "yes", the ETL will reconsile using cid to reconcile PCF nodes and PCF Services, and importing them as "generic"
            FQDN of opsman API (format http/https://host:[port])Stringno
            yesOpsman API FQDN Address, this property will be visible if set "yes" to "Do you want to reconcile vms with other entities using CID?"
            Token generating method (User or Client)SelectionnoClientIdyesSelect password or clientid as authentication method. This property will be visible if set "Yes" to Do you want to reconcile vms with other entities using CID?
            Username of the Opsman API userStringno
            yesUsername of the Opsman API user if the token generation method is set to "user"
            Password of the Opsman API passwordStringno
            yesPassword of the Opsman API user if the token generation method is set to "user"
            ClientId of the Opsman API ClientStringNo
            yesClient Id of the Opsman API if the token generation method is set to "client credential"
            Client Credential of the Opsman API ClientStringNo
            yesClient credential of the Opsman API if the token generation method is set to "client credential"

            Hidden properties: Pivotal CloudFoundry ETL provides extra hidden properties and they can be changed manually from edit configuration page.

            • To change the default polling period (1 minute ) for Applications, Organizations, and Spaces data, set a hidden property "extract.pcf.app.serve.interval" and set the value to desired seconds. For example, if want to change default polling interval from 1 minute to 5 minute, set the value to 300.
            • To change the default polling period (1 minute ) for Bosh deployment and its nodes data, set a hidden property "extract.pcf.bosh.serve.interval" and set the value to desired seconds. For example, if want to change default polling interval from 1 minute to 5 minute, set the value to 300.

            All the other generic properties are documented here

            The ETL tasks page shows the details of the newly configured Pivotal Cloudfoundry ETL.




Step III. Run the ETL

After you configure the ETL, you can run it to collect data. You can run the ETL in the following modes:

A. Simulation mode: Only validates connection to the data source, does not collect data. Use this mode when you want to run the ETL for the first time or after you make any changes to the ETL configuration.

B. Production mode: Collects data from the data source.

Running the ETL in simulation mode

To run the ETL in the simulation mode:

  1. In the console, navigate to Administration ETL & System Tasks, and select ETL tasks.
  2. On the ETL tasks page, click the ETL. The ETL details are displayed.
  3. In the Run configurations table, click Edit to modify the ETL configuration settings.
  4. On the Run configuration tab, ensure that the Execute in simulation mode option is set to Yes, and click Save.
  5. Click Run active configuration. A confirmation message about the ETL run job submission is displayed.
  6. On the ETL tasks page, check the ETL run status in the Last exit column.
    OK Indicates that the ETL ran without any error. You are ready to run the ETL in the production mode.
  7.  If the ETL run status is Warning, Error, or Failed:
    1. On the ETL tasks page, click  in the last column of the ETL name row.
    2. Check the log and reconfigure the ETL if required.
    3. Run the ETL again.
    4. Repeat these steps until the ETL run status changes to OK.

Running the ETL in the production mode

You can run the ETL manually when required or schedule it to run at a specified time. As of version 20.02.00.005 the integration delays the hierarchy to delay for six hours helping to reduce the load on the loader step.

Running the ETL manually

  1. On the ETL tasks page, click the ETL. The ETL details are displayed.
  2. In the Run configurations table, click Edit  to modify the ETL configuration settings. The Edit run configuration page is displayed.
  3. On the Run configuration tab, select No for the Execute in simulation mode option, and click Save.
  4. To run the ETL immediately, click Run active configuration. A confirmation message about the ETL run job submission is displayed.
    When the ETL is run, it collects data from the source and transfers it to the database.

Here's screenshot of ETL page after set it up and run completely.

Step IV. Verify Data Collection

Verify that the ETL ran successfully and check whether the Pivotal CF data is refreshed in the Workspace.

To verify whether the ETL ran successfully:

  1. In the console, click Administration > ETL and System Tasks > ETL tasks.
  2. In the Last exec time column corresponding to the ETL name, verify that the current date and time are displayed.
To verify that the Pivotal CF data is refreshed:

  1. In the console, click Workspace.
  2. Expand (Domain name) > Systems > PivotalCF> Instances.
  3. In the left pane, verify that the hierarchy displays the new and updated Pivotal CF instances.
  4. Click a Pivotal CF entity, and click the Metrics tab in the right pane.
  5. Check if the Last Activity column in the Configuration metrics and Performance metrics tables displays the current date.

Pivotal CF WorkspaceDetails
Entities

Supported Entities

We extracting two parts from the same Pivotal Cloud Foundry domain, component virtual machines and applications. The component virtual machine parts organized by Pivotal Cloud Foundry foundation (deployment), and are categorized into two parts - Diego Nodes (Pivotal Cloud Foundry Diego component), and Services (other component VMs). The applications components are aligned and structured according to Pivotal Cloud Foundry application management.

PCF - Domain: PCF domain

PCF - Organization: PCF Ogranizations of each domain

PCF - Space: PCF spaces of each oragnziation

PCF - Applicaiton: PCF applications under each space

PCF - Foundation: PCF Application Service (PAS) deployment for each domain and Isolation Segment deployment for each domain

PCF - Diego Node: PCF's diego component virtual machines, including:

  • diego cell
  • diego brain
  • diego database (bbs)
  • router
  • tcp-router
  • isolated diego cell
  • isolated router

PCF - Service: Other PCF's component virtual machines besides the diego node, including but not limit to:

  • backup_restore
  • clock_global
  • cloud_controller
  • doppler
  • loggregator_traffic_controller
  • mysql
  • nats
  • uaa
  • isolated haproxy
Hierarchy

The connector can replicate relationships and logical dependencies among these entities as they are found configured within the Pivotal Cloud Foundry domain.

hierarchy change

By default the hierarchy will be updated every 6 hours, starting 0:00 of the day.

The integration uses the following hierarchy:

  • A PCF - Domain is attached to the root hierarchy
  • Each PCF - Domain contains PCF - Organizations and PCF - Foundations
  • Each PCF - Organization contains PCF - Space, and each PCF - Space contains PCF - Applications
  • Each PCF - Foundations contains PCF - Diego Nodes and PCF - Services

The following image shows a sample hierarchy.

image2022-1-20_11-37-32.png 

Configuration and Performance Metrics Mapping

Data Source

Data Source Entity

Data Source Metric

TSCO Entity

TSCO Metric

Scaling Factor

CloudFoundry api

organizationsmem_limitPCF OrganizationMEM_LIMIT1024*1024
CloudFoundry apiorganizationstotal_routesPCF OrganizationROUTES1
CloudFoundry apiorganizationstotal_servicesPCF OrganizationSERVICE_NUM1
CloudFoundry apiapps/statsmem_quotaPCF ApplicationMEM_ALLOCATION1
CloudFoundry apiapps/statsdisk_quotaPCF ApplicationDISK_ALLOCATION1
CloudFoundry apiapps/statsmemPCF ApplicationMEM_CONSUMED1
CloudFoundry apiapps/statsdiskPCF ApplicationDISK_USED_SPACE1
CloudFoundry apiapps/statscpuPCF ApplicationCPU_UTIL1
CloudFoundry apiappsstatePCF ApplicationAPP_STATUSN/A
CloudFoundry apiapps
PCF ApplicationAPP_INSTANCES1
Log Cache apiVMssystem.cpu.sysPCF Diego Node, PCF ServiceCPU_UTIL_SYSTEM

0.01

Log Cache apiVMssystem.cpu.userPCF Diego Node, PCF ServiceCPU_UTIL_USER0.01
Log Cache apiVMs
system.cpu.waitPCF Diego Node, PCF ServiceCPU_UTIL_WAIT0.01
Log Cache apidiego_cellCapacityTotalMemoryPCF Diego Node - diego_cellTOTAL_REAL_MEM1024*1024
Log Cache apidiego_cellCapacityTotalContainersPCF Diego Node - diego_cellCONTAINER_MAX1
Log Cache apidiego_cellCapacityAllocatedDiskPCF Diego Node - diego_cellDISK_ALLOCATION1024*1024
Log Cache apidiego_cellCapacityTotalDiskPCF Diego Node - diego_cellDISK_SIZE1024*1024
Log Cache apidiego_cellContainerCountPCF Diego Node - diego_cellCONTAINER_NUM1
Log Cache apidiego_cellCapacityAllocatedMemoryPCF Diego Node - diego_cellMEM_ALLOCATION1024*1024
Log Cache apidiego_cellCapacityRemainingDiskPCF Diego Node - diego_cellDISK_FREE1024*1024
Log Cache apidiego_cellCapacityRemainingMemoryPCF Diego Node - diego_cellMEM_FREE1024*1024
Log Cache apidiego_cellContainerUsageDiskPCF Diego Node - diego_cellDISK_USED_SPACE1024*1024
Log Cache apidiego_cell, diego_database, diego_brain, tcp_router, gorouterjobPCF Diego NodeDIEGO_NODE_TYPEN/A
Log Cache apiVMssystem_cpu_idlePCF Diego Node, PCF ServiceCPU_UTIL_IDLE0.01
Log Cache apiVMs
system_disk_ephemeral_read_bytesPCF Diego Node, PCF ServiceDISK_EPHEMERAL_READ_RATE1
Log Cache apiVMs
system_disk_ephemeral_read_timePCF Diego Node, PCF Service
DISK_EPHEMERAL_READ_RESPONSE_TIME1
Log Cache apiVMs
system_disk_ephemeral_write_bytesPCF Diego Node, PCF Service
DISK_EPHEMERAL_WRITE_RATE1
Log Cache apiVMs
system_disk_ephemeral_write_timePCF Diego Node, PCF ServiceDISK_EPHEMERAL_WRITE_RESPONSE_TIME1
Log Cache apiVMs
system_disk_system_read_bytesPCF Diego Node, PCF Service

DISK_READ_RATE

1
Log Cache apiVMs
system_disk_system_read_timePCF Diego Node, PCF ServiceDISK_READ_RESPONSE_TIME1
Log Cache apiVMs
system_disk_system_io_timePCF Diego Node, PCF ServiceDISK_TOTAL_LATENCY1
Log Cache apiVMs
system.disk.system.inode_percentPCF Diego Node, PCF ServiceDISK_USED_INODES_PCT0.01
Log Cache apiVMs
system.disk.system.percent
PCF Diego Node, PCF ServiceDISK_USED_SPACE_PCT0.01
Log Cache apiVMs
system_disk_system_write_timePCF Diego Node, PCF ServiceDISK_WRITE_RESPONSE_TIME1
Log Cache apiVMs
system.disk.ephemeral.inode_percentPCF Diego Node, PCF Service

DISK_EPHEMERAL_USED_INODES_PCT

0.01
Log Cache apiVMs
system.disk.ephemeral.percentPCF Diego Node, PCF ServiceDISK_EPHEMERAL_USED_PCT0.01
Log Cache apiVMs
go_gc_duration_secondsPCF Diego Node, PCF ServiceGC_TIME1
Log Cache apiVMs
numGoRoutinesPCF Diego Node, PCF ServiceGOROUTINES1
Log Cache apiVMs
HEAPMEM_FREEPCF Diego Node, PCF ServiceHEAPMEM_FREE1
Log Cache apiVMs
go_memstats_heap_inuse_bytesPCF Diego Node, PCF Service

HEAPMEM_USED

1
Log Cache apiVMs
system.mem.kbPCF Diego Node, PCF ServiceMEM_CONSUMED1024
Log Cache apiVMs
system.mem.percentPCF Diego Node, PCF ServiceMEM_UTIL0.01
Log Cache apiVMs
process_virtual_memory_bytesPCF Diego Node, PCF ServiceMEM_VIRTUAL_ACTIVE1
Log Cache apiVMs
process_virtual_memory_max_bytesPCF Diego Node, PCF Service

MEM_VIRTUAL_LIMIT

1
Log Cache apiVMs
system_network_bytes_receivedPCF Diego Node, PCF ServiceNET_IN_BYTE_RATE1
Log Cache apiVMs
system_network_error_inPCF Diego Node, PCF ServiceNET_IN_ERROR_RATE1
Log Cache apiVMs
system_network_packets_receivedPCF Diego Node, PCF ServiceNET_IN_PKT_RATE1
Log Cache apiVMs
system_network_bytes_sentPCF Diego Node, PCF ServiceNET_OUT_BYTE_RATE1
Log Cache apiVMs
system_network_error_outPCF Diego Node, PCF ServiceNET_OUT_ERROR_RATE1
Log Cache apiVMs
system_network_packets_sentPCF Diego Node, PCF ServiceNET_OUT_PKT_RATE1
Log Cache apiVMs
process_open_fdsPCF Diego Node, PCF ServiceOPEN_FILES1
Log Cache apidiego_cell, diego_databaseRequestsCancelledPCF Diego Node - diego_cell, diego_databaseREQ_CANCELLED1
Log Cache apidiego_cell, diego_databaseRequestsFailedPCF Diego Node - diego_cell, diego_databaseREQ_FAILED1
Log Cache apidiego_cell, diego_databaseRequestsInFlightPCF Diego Node - diego_cell, diego_databaseREQ_FLIGHT1
Log Cache apidiego_cell, diego_databaseRequestsStartedPCF Diego Node - diego_cell, diego_databaseREQ_STARTED1
Log Cache apidiego_cell, diego_databaseRequestsSucceededPCF Diego Node - diego_cell, diego_databaseREQ_SUCCEEDED1
Log Cache apiVMs
go_threadsPCF Diego Node, PCF ServiceTHREAD_COUNT1
Log Cache apidiego_databaseDBQueryDurationMaxPCF Diego Node - diego_databaseDB_QUERY_MAX1
Log Cache apidiego_databaseActiveLocksPCF Diego Node- diego_databaseDB_LOCKS1
Log Cache apidiego_databaseLocksExpiredPCF Diego Node- diego_databaseDB_LOCKS_EXPIRED1
Log Cache apidiego_databaseDBQueriesFailedPCF Diego Node- diego_databaseDB_QUERY_FAILED1
Log Cache apidiego_databaseDBQueriesInFlightPCF Diego Node- diego_databaseDB_QUERY_FLIGHT1
Log Cache apidiego_databaseDBQueriesSucceededPCF Diego Node- diego_databaseDB_QUERY_SUCCEEDED1
Log Cache apidiego_databaseDBQueriesTotalPCF Diego Node- diego_databaseDB_QUERY_TOTAL1
Log Cache apidiego_databaseDBOpenConnectionsPCF Diego Node- diego_databaseDB_SESSIONS1
Log Cache apidiego_databaseDBWaitDurationPCF Diego Node- diego_database

DB_WAIT_DURATION

1
Log Cache apidiego_databaseConvergenceLRPDurationPCF Diego Node- diego_databaseLRP_CONVERGE_DURATION1
Log Cache apidiego_databaseLRPsDesiredPCF Diego Node- diego_databaseLRP_MAX1
Log Cache apidiego_databaseLRPsRunningPCF Diego Node- diego_databaseLRP_RUNNING1
Log Cache apidiego_databaseLRPsMissingPCF Diego Node- diego_databaseLRP_MISSING1
Log Cache apidiego_databaseLRPsExtraPCF Diego Node- diego_databaseLRP_EXTRA1
Log Cache apidiego_databaseLRPsClaimedPCF Diego Node- diego_databaseLRP_CLAIMED1
Log Cache apidiego_databaseTasksCompletedPCF Diego Node- diego_database

TASK_COMPLETED

1
Log Cache apidiego_databaseTasksPendingPCF Diego Node- diego_databaseTASK_PENDING1
Log Cache apidiego_databaseTasksResolvingPCF Diego Node- diego_databaseTASK_RESOLVING1
Log Cache apidiego_databaseTasksRunningPCF Diego Node- diego_databaseTASK_RUNNING1
Log Cache apidiego_databaseTasksFailedPCF Diego Node- diego_databaseTASK_FAILED1
Log Cache apidiego_databaseTasksStartedPCF Diego Node- diego_databaseTASK_STARTED1
Log Cache apidiego_databaseTasksSucceededPCF Diego Node- diego_databaseTASK_SUCCEEDED1
Log Cache apiroutertotal_dropped_messagesPCF Diego Node- routerDROPPED_MESSAGES_NUM1
Log Cache apiuaavitals.jvm.non-heap.committedPCF Service - uaaNONHEAPMEM_COMMITTED1
Log Cache apiuaarequests.global.completed.countPCF Service - uaa

RESPONSE_TIME

1
Log Cache apiuaavitals.jvm.heap.maxPCF Service - uaaHEAPMEM_MAX1
Log Cache apitcprouternumCPUsPCF Diego Node - tcprouterCPU_NUM1
Derived Metrics

Data Source

Data Source Entity

Data Source Metric

Target Entity

Target Metric

Aggregation type

TSCO

PCF ApplicationMEM_CONSUMEDPCF OrganizationMEM_CONSUMEDSUM
TSCOPCF ApplicationDISK_USED_SPACEPCF OrganizationDISK_USED_SPACESUM
TSCOPCF ApplicaitonCPU_UTILPCF OrganizationCPU_UTILSUM
TSCOPCF ApplicationAPP_INSTANCESPCF OrganizationAPP_INSTANCESSUM

TSCO

PCF ApplicationMEM_CONSUMEDPCF SPACEMEM_CONSUMEDSUM
TSCOPCF ApplicationDISK_USED_SPACEPCF SPACEDISK_USED_SPACESUM
TSCOPCF ApplicaitonCPU_UTILPCF SPACECPU_UTILSUM
TSCOPCF ApplicationAPP_INSTANCESPCF SPACEAPP_INSTANCESSUM
TSCOPCF ApplicationMEM_USED/TOTAL_REAL_MEMPCF ApplicationMEM_UTILAVG
TSCOPCF ApplicationDISK_USED_SPACE/DISK_SIZEPCF ApplicationDISK_USED_SPACE_PCTAVG
TSCOPCF Diego Node, PCF ServiceSWAP_SPACE_USED/SWAP_SPACE_UTILPCF Diego Node, PCF ServiceSWAP_SPACE_TOTAVG
TSCOPCF Diego Node, PCF ServiceMEM_CONSUMED/MEM_UTILPCF Diego Node, PCF ServiceTOTAL_REAL_MEMAVG
TSCOPCF Deigo Node, PCF Service1- CPU_UTIL_IDLEPCF Diego Node, PCF ServiceCPU_UTILAVG
TSCOPCF Diego Node, PCF ServiceHEAPMEM_USED/(HEAPMEM_FREE+ HEAPMEM_USED)PCF Diego Node, PCF ServiceHEAPMEM_UTILAVG
TSCOPCF Diego Node - diego_cellSWAP_SPACE_USED/SWAP_SPACE_UTILPCF FoundationSWAP_SPACE_TOTSUM
TSCOPCF Diego Node - diego_cellMEM_CONSUMED/MEM_UTILPCF FoundationTOTAL_REAL_MEMSUM
TSCOPCF Diego Node - diego_cell1- CPU_UTIL_IDLEPCF FoundationCPU_UTILSUM
TSCOPCF Diego Node - diego_cellHEAPMEM_USED/(HEAPMEM_FREE+ HEAPMEM_USED)PCF FoundationHEAPMEM_UTILSUM
TSCOPCF Diego Node, PCF Service
PCF FoundationNODE_NUMCOUNT
TSCOPCF Diego Node
PCF FoundationDIEGO_CELLSCOUNT
TSCOPCF Service
PCF FoundationDIEGO_NODESCOUNT
TSCOPCF Diego Node - diego_cellCPU_UTIL_SYSTEMPCF FoundationCPU_UTIL_SYSTEM

SUM

TSCOPCF Diego Node - diego_cellCPU_UTIL_USERPCF FoundationCPU_UTIL_USERSUM
TSCOPCF Diego Node - diego_cellCPU_UTIL_WAITPCF FoundationCPU_UTIL_WAITSUM
TSCOPCF Diego Node - diego_cellTOTAL_REAL_MEMPCF FoundationTOTAL_REAL_MEMSUM
TSCOPCF Diego Node - diego_cellCONTAINER_MAXPCF FoundationCONTAINER_MAXSUM
TSCOPCF Diego Node - diego_cellDISK_ALLOCATIONPCF FoundationDISK_ALLOCATIONSUM
TSCOPCF Diego Node - diego_cellDISK_SIZEPCF FoundationDISK_SIZESUM
TSCOPCF Diego Node - diego_cellCONTAINER_NUMPCF FoundationCONTAINER_NUMSUM
TSCOPCF Diego Node - diego_cellMEM_ALLOCATIONPCF FoundationMEM_ALLOCATIONSUM
TSCOPCF Diego Node - diego_cellDISK_FREEPCF FoundationDISK_FREESUM
TSCOPCF Diego Node - diego_cellMEM_FREEPCF FoundationMEM_FREESUM
TSCOPCF Diego Node - diego_cellDISK_USED_SPACEPCF FoundationDISK_USED_SPACESUM
TSCOPCF Diego Node - diego_cellCPU_UTIL_IDLEPCF FoundationCPU_UTIL_IDLESUM
TSCOPCF Diego Node - diego_cellDISK_EPHEMERAL_READ_RATEPCF FoundationDISK_EPHEMERAL_READ_RATESUM
TSCOPCF Diego Node - diego_cellDISK_EPHEMERAL_READ_RESPONSE_TIMEPCF FoundationDISK_EPHEMERAL_READ_RESPONSE_TIMESUM
TSCOPCF Diego Node - diego_cellDISK_EPHEMERAL_WRITE_RATEPCF FoundationDISK_EPHEMERAL_WRITE_RATESUM
TSCOPCF Diego Node - diego_cellDISK_EPHEMERAL_WRITE_RESPONSE_TIMEPCF FoundationDISK_EPHEMERAL_WRITE_RESPONSE_TIMESUM
TSCOPCF Diego Node - diego_cellDISK_READ_RATEPCF Foundation

DISK_READ_RATE

SUM
TSCOPCF Diego Node - diego_cellDISK_READ_RESPONSE_TIMEPCF FoundationDISK_READ_RESPONSE_TIMESUM
TSCOPCF Diego Node - diego_cellDISK_TOTAL_LATENCYPCF FoundationDISK_TOTAL_LATENCYSUM
TSCOPCF Diego Node - diego_cellDISK_USED_INODES_PCTPCF FoundationDISK_USED_INODES_PCTSUM
TSCOPCF Diego Node - diego_cell
DISK_USED_SPACE_PCT
PCF FoundationDISK_USED_SPACE_PCTSUM
TSCOPCF Diego Node - diego_cellDISK_WRITE_RESPONSE_TIMEPCF FoundationDISK_WRITE_RESPONSE_TIMESUM
TSCOPCF Diego Node - diego_cellDISK_EPHEMERAL_USED_INODES_PCTPCF Foundation

DISK_EPHEMERAL_USED_INODES_PCT

SUM
TSCOPCF Diego Node - diego_cellDISK_EPHEMERAL_USED_PCTPCF FoundationDISK_EPHEMERAL_USED_PCTSUM
TSCOPCF Diego Node - diego_cellGC_TIMEPCF FoundationGC_TIMESUM
TSCOPCF Diego Node - diego_cellGOROUTINESPCF FoundationGOROUTINESSUM
TSCOPCF Diego Node - diego_cellHEAPMEM_FREEPCF FoundationHEAPMEM_FREESUM
TSCOPCF Diego Node - diego_cellHEAPMEM_USEDPCF Foundation

HEAPMEM_USED

SUM
TSCOPCF Diego Node - diego_cellMEM_CONSUMEDPCF FoundationMEM_CONSUMEDSUM
TSCOPCF Diego Node - diego_cellMEM_UTILPCF FoundationMEM_UTILSUM
TSCOPCF Diego Node - diego_cellMEM_VIRTUAL_ACTIVEPCF FoundationMEM_VIRTUAL_ACTIVESUM
TSCOPCF Diego Node - diego_cellMEM_VIRTUAL_LIMITPCF Foundation

MEM_VIRTUAL_LIMIT

SUM
TSCOPCF Diego Node - diego_cellNET_IN_BYTE_RATEPCF FoundationNET_IN_BYTE_RATESUM
TSCOPCF Diego Node - diego_cellNET_IN_ERROR_RATEPCF FoundationNET_IN_ERROR_RATESUM
TSCOPCF Diego Node - diego_cellNET_IN_PKT_RATEPCF FoundationNET_IN_PKT_RATESUM
TSCOPCF Diego Node - diego_cellNET_OUT_BYTE_RATEPCF FoundationNET_OUT_BYTE_RATESUM
TSCOPCF Diego Node - diego_cellNET_OUT_ERROR_RATEPCF FoundationNET_OUT_ERROR_RATESUM
TSCOPCF Diego Node - diego_cellNET_OUT_PKT_RATEPCF FoundationNET_OUT_PKT_RATESUM
TSCOPCF Diego Node - diego_cellOPEN_FILESPCF FoundationOPEN_FILESSUM
TSCOPCF Diego Node - diego_cellREQ_CANCELLEDPCF FoundationREQ_CANCELLEDSUM
TSCOPCF Diego Node - diego_cellREQ_FAILEDPCF FoundationREQ_FAILEDSUM
TSCOPCF Diego Node - diego_cellREQ_FLIGHTPCF FoundationREQ_FLIGHTSUM
TSCOPCF Diego Node - diego_cellREQ_STARTEDPCF FoundationREQ_STARTEDSUM
TSCOPCF Diego Node - diego_cellREQ_SUCCEEDEDPCF FoundationREQ_SUCCEEDEDSUM
TSCOPCF Diego Node - diego_cellTHREAD_COUNTPCF FoundationTHREAD_COUNT

SUM

TSCOPCF Diego Node - diego_cellSWAP_SPACE_USED/SWAP_SPACE_UTILPCF DomainSWAP_SPACE_TOTSUM
TSCOPCF Diego Node - diego_cellMEM_CONSUMED/MEM_UTILPCF DomainTOTAL_REAL_MEMSUM
TSCOPCF Diego Node - diego_cell1- CPU_UTIL_IDLEPCF DomainCPU_UTILSUM
TSCOPCF Diego Node - diego_cellHEAPMEM_USED/(HEAPMEM_FREE+ HEAPMEM_USED)PCF DomainHEAPMEM_UTILSUM
TSCOPCF Diego Node, PCF Services
PCF DomainNODE_NUMCOUNT
TSCOPCF Diego Node
PCF DomainDIEGO_CELLSCOUNT
TSCOPCF Services
PCF DomainDIEGO_NODESCOUNT
TSCOPCF Diego Node - diego_cellCPU_UTIL_SYSTEMPCF DomainCPU_UTIL_SYSTEM

SUM

TSCOPCF Diego Node - diego_cellCPU_UTIL_USERPCF DomainCPU_UTIL_USERSUM
TSCOPCF Diego Node - diego_cellCPU_UTIL_WAITPCF DomainCPU_UTIL_WAITSUM
TSCOPCF Diego Node - diego_cellTOTAL_REAL_MEMPCF DomainTOTAL_REAL_MEMSUM
TSCOPCF Diego Node - diego_cellCONTAINER_MAXPCF DomainCONTAINER_MAXSUM
TSCOPCF Diego Node - diego_cellDISK_ALLOCATIONPCF DomainDISK_ALLOCATIONSUM
TSCOPCF Diego Node - diego_cellDISK_SIZEPCF DomainDISK_SIZESUM
TSCOPCF Diego Node - diego_cellCONTAINER_NUMPCF DomainCONTAINER_NUMSUM
TSCOPCF Diego Node - diego_cellMEM_ALLOCATIONPCF DomainMEM_ALLOCATIONSUM
TSCOPCF Diego Node - diego_cellDISK_FREEPCF DomainDISK_FREESUM
TSCOPCF Diego Node - diego_cellMEM_FREEPCF DomainMEM_FREESUM
TSCOPCF Diego Node - diego_cellDISK_USED_SPACEPCF DomainDISK_USED_SPACESUM
TSCOPCF Diego Node - diego_cellCPU_UTIL_IDLEPCF DomainCPU_UTIL_IDLESUM
TSCOPCF Diego Node - diego_cellDISK_EPHEMERAL_READ_RATEPCF DomainDISK_EPHEMERAL_READ_RATESUM
TSCOPCF Diego Node - diego_cellDISK_EPHEMERAL_READ_RESPONSE_TIMEPCF DomainDISK_EPHEMERAL_READ_RESPONSE_TIMESUM
TSCOPCF Diego Node - diego_cellDISK_EPHEMERAL_WRITE_RATEPCF DomainDISK_EPHEMERAL_WRITE_RATESUM
TSCOPCF Diego Node - diego_cellDISK_EPHEMERAL_WRITE_RESPONSE_TIMEPCF DomainDISK_EPHEMERAL_WRITE_RESPONSE_TIMESUM
TSCOPCF Diego Node - diego_cellDISK_READ_RATEPCF Domain

DISK_READ_RATE

SUM
TSCOPCF Diego Node - diego_cellDISK_READ_RESPONSE_TIMEPCF DomainDISK_READ_RESPONSE_TIMESUM
TSCOPCF Diego Node - diego_cellDISK_TOTAL_LATENCYPCF DomainDISK_TOTAL_LATENCYSUM
TSCOPCF Diego Node - diego_cellDISK_USED_INODES_PCTPCF DomainDISK_USED_INODES_PCTSUM
TSCOPCF Diego Node - diego_cell
DISK_USED_SPACE_PCT
PCF DomainDISK_USED_SPACE_PCTSUM
TSCOPCF Diego Node - diego_cellDISK_WRITE_RESPONSE_TIMEPCF DomainDISK_WRITE_RESPONSE_TIMESUM
TSCOPCF Diego Node - diego_cellDISK_EPHEMERAL_USED_INODES_PCTPCF Domain

DISK_EPHEMERAL_USED_INODES_PCT

SUM
TSCOPCF Diego Node - diego_cellDISK_EPHEMERAL_USED_PCTPCF DomainDISK_EPHEMERAL_USED_PCTSUM
TSCOPCF Diego Node - diego_cellGC_TIMEPCF DomainGC_TIMESUM
TSCOPCF Diego Node - diego_cellGOROUTINESPCF DomainGOROUTINESSUM
TSCOPCF Diego Node - diego_cellHEAPMEM_FREEPCF DomainHEAPMEM_FREESUM
TSCOPCF Diego Node - diego_cellHEAPMEM_USEDPCF Domain

HEAPMEM_USED

SUM
TSCOPCF Diego Node - diego_cellMEM_CONSUMEDPCF DomainMEM_CONSUMEDSUM
TSCOPCF Diego Node - diego_cellMEM_UTILPCF DomainMEM_UTILSUM
TSCOPCF Diego Node - diego_cellMEM_VIRTUAL_ACTIVEPCF DomainMEM_VIRTUAL_ACTIVESUM
TSCOPCF Diego Node - diego_cellMEM_VIRTUAL_LIMITPCF Domain

MEM_VIRTUAL_LIMIT

SUM
TSCOPCF Diego Node - diego_cellNET_IN_BYTE_RATEPCF DomainNET_IN_BYTE_RATESUM
TSCOPCF Diego Node - diego_cellNET_IN_ERROR_RATEPCF DomainNET_IN_ERROR_RATESUM
TSCOPCF Diego Node - diego_cellNET_IN_PKT_RATEPCF DomainNET_IN_PKT_RATESUM
TSCOPCF Diego Node - diego_cellNET_OUT_BYTE_RATEPCF DomainNET_OUT_BYTE_RATESUM
TSCOPCF Diego Node - diego_cellNET_OUT_ERROR_RATEPCF DomainNET_OUT_ERROR_RATESUM
TSCOPCF Diego Node - diego_cellNET_OUT_PKT_RATEPCF DomainNET_OUT_PKT_RATESUM
TSCOPCF Diego Node - diego_cellOPEN_FILESPCF DomainOPEN_FILESSUM
TSCOPCF Diego Node - diego_cellREQ_CANCELLEDPCF DomainREQ_CANCELLEDSUM
TSCOPCF Diego Node - diego_cellREQ_FAILEDPCF DomainREQ_FAILEDSUM
TSCOPCF Diego Node - diego_cellREQ_FLIGHTPCF DomainREQ_FLIGHTSUM
TSCOPCF Diego Node - diego_cellREQ_STARTEDPCF DomainREQ_STARTEDSUM
TSCOPCF Diego Node - diego_cellREQ_SUCCEEDEDPCF DomainREQ_SUCCEEDEDSUM
TSCOPCF Diego Node - diego_cellTHREAD_COUNTPCF DomainTHREAD_COUNT

SUM

TSCOPCF Space
PCF DomainSPACESCOUNT
TSCOPCF Organization
PCF DomainORGANIZATIONSCOUNT
TSCOPCF Applications
PCF DomainAPPLICATIONSCOUNT
TSCOPCF ApplicationsAPP_INSTANCESPCF DomainAPP_INSTANCESSUM
Lookup Field Considerations

Entity Type

Strong Lookup Field

Others

PCF - Application

DOMAIN&&GUID&&ORG&&SPACE&&TYPEWeakLoopup:GUID
PCF - SpaceDOMAIN&&GUID&&ORG&&TYPEWeakLoopup:GUID
PCF - OrganizationDOMAIN&&GUID&&TYPEWeakLoopup:GUID
PCF - Diego NodeDOMAIN&&DEPLOYMENT&&NAME&&TYPEWeakLookup: Name, Compatibility: Name
PCF - ServiceDOMAIN&&DEPLOYMENT&&NAME&&TYPEWeakLookup: Name, Compatibility: Name
PCF - DeploymentDOMAIN&&NAME&&TYPEWeakLookup: Name
PCF - DomainNAME&&TYPEWeakLookup: Name

 


Was this page helpful? Yes No Submitting... Thank you

Comments