DataSource Prometheus metrics

This page lists the Prometheus metrics published by DataSource applications.

Prometheus metrics are not published by default. To enable this feature, see the documentation for the prometheus-port configuration item.

DataSource for C (DSDK) metrics

This section describes Prometheus metrics published by all C DataSource applications, including Liberator, Transformer, and the TREP Adapter.

This feature requires DataSource for C 7.1.16+ (Liberator 7.1.15+, Transformer 7.1.10+, TREP Adapter 7.1.3+).

For descriptions of additional metrics published by specific C DataSource applications, see the links below:

Process metrics

C DataSource applications publish the following metrics on the operating system process that runs the DataSource.

These metrics are only available on RHEL builds of C DataSources.

process_cpu_seconds_total

[gauge] Total user and system CPU time spent in seconds.

process_max_fds

[gauge] Maximum number of open file descriptors.

process_open_fds

[gauge] Number of open file descriptors.

process_start_time_seconds

[gauge] Start time of the process since the unix epoch in seconds.

process_virtual_memory_bytes

[gauge] Virtual memory size in bytes.

process_virtual_memory_max_bytes

[gauge] Maximum amount of virtual memory available in bytes.

System metrics

C DataSources publish the following CPU, memory, and process metrics, where appname is the name of the DataSource application, as defined by the application-name configuration item.

appname_system_cputime_total

[gauge] The total amount of time (seconds) the CPU has spent running the DataSource process. This value is the sum of appname_system_system_cputime_total and appname_system_user_cputime_total.

appname_system_system_cputime_total

[gauge] The total amount of time (seconds) the CPU has spent running kernel-space code for the DataSource process.

appname_system_user_cputime_total

[gauge] The total amount of time (seconds) the CPU has spent running user-space code for the DataSource process.

appname_system_process_uptime

[gauge] Elapsed 'wall clock' time (seconds) since the DataSource process was started.

appname_system_memory_usage

[gauge] The total amount of virtual memory (kilobytes) used by the DataSource process, as reported by the VmRSS value in /proc/<pid>/status.

appname_system_cpu_usage

[gauge] Average CPU percentage used by the DataSource process in the period configured by the configuration option process-usage-period (default 10 seconds).

DataSource peer metrics

Metrics for DataSource peer connections, where appname is the name of the DataSource application, as defined by the application-name configuration item.

appname_peer_global_bytes_read

[gauge] Total number of bytes read from all peer connections.

appname_peer_global_bytes_read_rate

[gauge] The rate data is received (bytes/second) from all peer connections, measured over the sample period defined by peer-monitor-interval.

appname_peer_global_bytes_written

[gauge] Total number of bytes written to peer connections.

appname_peer_global_bytes_written_rate

[gauge] The rate data is written (bytes/second) to all peer connections, measured over the sample period defined by peer-monitor-interval.

appname_peer_global_messages_read

[gauge] Total number of messages read from peer connections.

appname_peer_global_messages_read_rate

[gauge] The rate messages are received (messages/second) from all peer connections, measured over the sample period defined by peer-monitor-interval.

appname_peer_global_messages_written

[gauge] Total number of messages written to peer connections.

appname_peer_global_messages_written_rate

[gauge] The rate messages are written (messages/second) to all peer connections, measured over the sample period defined by peer-monitor-interval.

Data service metrics

C DataSources publish the following metrics for each data service, where appname is the name of the DataSource application as defined by application-name and servicename is the name of the data service.

appname_service_servicename_average_response_time

[gauge] The average time (milliseconds) taken for the data service to respond to a subscription request, measured over the sample period defined by peer-monitor-interval.

appname_service_servicename_bytes_read

[gauge] Total number of bytes read from the data service.

appname_service_servicename_bytes_read_rate

[gauge] The rate at which data is received (bytes/second) from the data service, measured over the sample period defined by peer-monitor-interval.

appname_service_servicename_bytes_written

[gauge] Total number of bytes written to the data service.

appname_service_servicename_bytes_written_rate

[gauge] The rate at which data is written (bytes/second) to the data service, measured over the sample period defined by peer-monitor-interval.

appname_service_servicename_messages_read

[gauge] The total number of messages received from the data service.

appname_service_servicename_messages_read_rate

[gauge] The rate at which messages are received (messages/second) from the data service, measured over the sample period defined by peer-monitor-interval.

appname_service_servicename_messages_written

[gauge] The total number of messages written to the data service.

appname_service_servicename_messages_written_rate

[gauge] The rate at which messages are written (messages/second) to the data service, measured over the sample period defined by peer-monitor-interval.

appname_service_servicename_response_time

[gauge] The time taken (seconds) for the data service to respond to the first subscription request. This value only changes if the object is discarded and requested again.

appname_service_servicename_state

[gauge] The state of the data service. It has two possible values: 1 for up, 0 for down.