Skip to main content

Installation and Administration Guide

Privitar Query Engine and Data Proxy Metrics

Using a third-party event monitoring tool, such as Prometheus, you can capture the following metrics from the Privitar Query Engine and data proxy:

Table 49. Privitar Query Engine Metrics

Metric

Description

Type

com_privitar_query_engine_jdbc_handler

Time spent executing the given action

An equivalent metric exists in the data proxy as com_privitar_data_proxy_jdbc_handler

Timer

com_privitar_query_engine_policy_enforcement

Time spent:

  • SQL parsing

  • policy and metadata loading

  • policy enforcement

  • SQL generation

Timer

com_privitar_query_engine_policy_load

Time spent loading policies from the control plane

Timer

com_privitar_query_engine_connection_details_load

Time spent loading connection details (such as JDBC URL, username, and password) from the control plane

Timer

com_privitar_query_engine_underlying_db_metadata_load

Time spent loading table metadata from the underlying database

Timer



Table 50. Data Proxy Metrics

Metric

Description

Type

time_of_last_request_since_epoch

The timestamp of the last request received by the data proxy. This is useful to see whether a proxy has been active recently

Gauge

com_privitar_data_proxy_jdbc_handler

Time spent executing the given action

An equivalent metric exists in the Privitar Query Engine as com_privitar_query_engine_jdbc_handler

Timer



Some metrics have an action tag to discriminate between different actions covered by the same metric name. The following are explanations of each action tag:

Table 51. Action Tags

Action Tag

Description

Note

GET_DATABASE_PROPERTIES

Returns a map of static database properties

GET_TABLES

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_COLUMNS

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_SCHEMAS

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_CATALOGS

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_TABLE_TYPES

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_PROCEDURES

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_PROCEDURE_COLUMNS

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_COLUMN_PRIVILEGES

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_TABLE_PRIVILEGES

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_BEST_ROW_IDENTIFIER

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_VERSION_COLUMNS

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_PRIMARY_KEYS

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_IMPORTED_KEYS

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_EXPORTED_KEYS

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_CROSS_REFERENCE

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_TYPE_INFO

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_INDEX_INFO

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_UDTS

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_SUPER_TYPES

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_SUPER_TABLES

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_ATTRIBUTES

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_CLIENT_INFO_PROPERTIES

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_FUNCTIONS

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_FUNCTION_COLUMNS

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

GET_PSEUDO_COLUMNS

Executed when the corresponding method on the java.sql.DatabaseMetaData interface is executed

See the Javadoc of that method for more information.

CREATE_ITERABLE

Creates an iterable for a result set

PREPARE

Prepares a statement

Executed when java.sql.Connection#prepareStatement is used

PREPARE_AND_EXECUTE

Prepares and executes a statement, and if the query has a result set then fetches the first frame of data

Changed from PREPARE_AND_EXECUTE_DEPRECATED for v1.1.1 of the platform

PREPARE_AND_EXECUTE_BATCH

Prepares a statement and then executes a number of SQL commands in one pass

Executed when java.sql.Statement#executeBatch is used

EXECUTE_BATCH

Executes a collection of bound parameter values on a prepared statement

Executed when java.sql.PreparedStatement#executeBatch is used

FETCH

Returns a frame of rows

EXECUTE

Executes a prepared statement

Executes a prepared statement. Executed when java.sql.PrepatedStatement#execute is used.

Changed from EXECUTE_DEPRECATED for v1.1.1 of the platform

CREATE_STATEMENT

Called during the creation of a statement

CLOSE_STATEMENT

Closes a statement

Executed when java.sql.Statement#close is used

OPEN_CONNECTION

Opens (creates) a connection

CLOSE_CONNECTION

Closes a connection

SYNC_RESULTS

Resets the ResultSet on a statement

For Privitar use only. Not a JDBC method. Used to manage internal state

COMMIT

Makes all changes since the last commit or rollback permanent

Executed when java.sql.Connection#commit is used

ROLLBACK

Undoes all changes since the last commit or rollback

Executed when java.sql.Connection#rollback is used

CONNECTION_SYNC

Synchronizes client and server view of connection properties

For Privitar use only. Not a JDBC method. Used to manage internal state