Probes v9
A probe is a scheduled task that retrieves information about the database objects that are being monitored by the PEM agent. PEM uses the collected information to build the graphs displayed on each homepage. The Management > Manage Probes tab allows you to modify the data collection schedule and the length of time that PEM retains information returned by a specific probe.
System probes
Unless otherwise noted, Postgres Enterprise Manager enables the following probes at the server, database, schema, extension (starting with version 8.4), or agent levels:
Name | Information monitored by probe | Level |
---|---|---|
Background Writer Statistics | Monitors information about the background writer. The information includes the number of: Timed checkpoints Requested checkpoints Buffers written (by checkpoint) Buffers written (by background writer) Background writer cycles Background buffers written Buffers allocated | Server |
Barman Configuration | Information about the Barman tool global configuration. | Agent |
Barman Information | Information about the Barman tool. | Agent |
Barman Server | Information about the respective database server configuration monitored by Barman. | Agent |
Barman Server Status | Information about the respective database server status monitored by Barman. | Agent |
Barman Server Backup | Information about the backups of the respective database servers. | Agent |
Barman Server WAL Status | Information about the Barman server WAL files. | Agent |
Blocked Session Information | Information about blocked sessions. | Server |
CPU Usage | CPU usage information. | Agent |
Data and Log File Analysis | Information about log files. The information includes: The name of the log file The directory in which the log file resides | Server |
Database Frozen XID | The frozen XID of each database. | Server |
Database Size | Information about the size of the monitored databases. The information includes: The time the information was gathered The database name The database size (in MB). | Server |
Database Statistics | Database statistics. The information includes: The number of backends The number of transactions committed The number of transactions rolled back The number of blocks read The number of blocks hit The number of rows returned The number of rows fetched The number of rows inserted The number of rows updated The number of rows deleted | Server |
Disk Busy Info | Information about disk activity. Note: This probe isn't supported on Mac OS X, Solaris, or HP-UX. | Agent |
Disk Space | Information about disk space usage. The information includes: The amount of disk space used The amount of disk space available | Agent |
EDB Audit Configuration | The audit logging configuration of EDB Postgres Advanced Server. | Server |
Failover Manager Cluster Info | Monitors a Failover Manager cluster, returning information about the cluster. This probe is enabled when a cluster name and path of the Failover Manager binary is provided on the Server Properties dialog box. | Server |
Failover Manager Node Status | Monitors a Failover Manager cluster, returning details about each node within the cluster. This probe is enabled when a cluster name and path of the Failover Manager binary is provided on the Server Properties dialog box. | Server |
Function Statistics | Monitors a database, retrieving information about functions. The information includes: Function names Argument types Return values | Database |
Index Size | Monitors a database, retrieving information about indexes. The information includes: The name of the index The time the data was gathered The size of the index (in MB) | Database |
Index Statistics | Index statistics. The information includes: The number of index scans The number of rows read The number of rows fetched The number of blocks read The number of blocks hit | Database |
Installed Packages | The packages that are currently installed. The information gathered includes: The name of the installed package The version of the installed package The date and time that the probe executed | Agent |
IO Analysis | Disk I/O information. The information includes: The number of blocks read The number of blocks written The date and time that the probe executed Note: This probe isn't supported on Mac OS X. | Agent |
Load Average | CPU load averages. The information includes: The 1-minute load average The 5-minute load average The 15-minute load average Note: This probe isn't supported on Windows. | Agent |
Lock Information | Lock information. The information includes: The database name The lock type The lock mode The process holding the lock | Server |
Memory Usage | Information about system memory usage. The information includes: Total RAM in MB Free RAM in MB Total swap memory in MB Free swap memory in MB Shared system memory in MB (used by tuning wizard to tune the memory parameters for the database server) - On non-Windows systems, it is the shmmax value and read from /proc/sys/kernel/shmmax .- On Windows, it is same as total memory. | Agent |
Network Statistics | Network statistics. The information includes: The interface IP address The number of packets sent The number of packets received The number of bytes sent The number of bytes received The link speed (in MB/second) | Agent |
Number of Prepared Transactions | Stores the number of prepared transactions. | Server |
Number of WAL Files | The number of WAL files. | Server |
Object Catalog: Database | Monitors a list of databases and their properties. The information includes: The database name The database encoding type If the database allows user connections or system connections | Server |
Object Catalog: Foreign Key | Monitors a list of foreign keys and their properties. The information includes: The name of the table that contains the foreign key The name of the table that the foreign key references The name of the database in which the table resides The name of the schema in which the table resides | Schema |
Object Catalog: Function | Monitors a list of functions and their properties. The information includes: The name of the function The name of the schema in which the function resides The name of the database in which the function resides | Schema |
Object Catalog: Index | Monitors a list of indexes and their properties. The information includes: The name of the index The name of the table that the index is associated with The name of the database in which the indexed table resides | Schema |
Object Catalog: Schema | Monitors a list of schemas and their associated databases and servers. | Database |
Object Catalog: Sequence | Monitors a list of sequences and their properties. | Schema |
Object Catalog: Table | Monitors a list of table information. The information includes: The table name The name of the schema in which the table resides The name of the database in which the schema resides A Boolean indicator that shows whether the table has a primary key | Schema |
Object Catalog: Tablespace | Monitors a list of tablespaces. | Server |
Operating System Information | Operating system details and boot time. | Agent |
Package Catalog | The packages that are currently available for installation. The information gathered includes: The package name The package version | Agent |
PG HBA Conf | Authentication configuration information from the pg_hba.conf file. | Server |
Server Information | Server information. | Server |
Session Information | Session information. The information includes: The name of the session user The date and time that the session connected to the server The status of the session at the time that the information was gathered (idle, waiting, and so on) The client address and port number | Server |
Settings | Monitors the values currently assigned to GUC variables. | Server |
SQL Protect | Monitors a server, retrieving information about SQL injection attacks. | Server |
Slony Replication | Lag data for clusters replicated using Slony. | Database |
Streaming Replication | Monitors a cluster that is using streaming replication, retrieving information about: The sent Xlog location (in bytes) The write Xlog location (in bytes) The flush Xlog location (in bytes) The replay Xlog location (in bytes) The Xlog lag (in segments) The Xlog lag (in pages) | Server |
Streaming Replication Lag Time | Monitors a cluster that's using streaming replication, retrieving lag information about: Replication lag time (in seconds) Current status of replication (running/paused) | Server |
Streaming Replication Database Conflicts | Monitors a database that's using streaming replication, retrieving information about any conflicts that arise. This includes information about queries that were canceled due to the number of: Drop tablespace conflicts Lock timeout conflicts Old snapshot conflicts Pinned buffer conflicts Deadlock conflicts | Server |
Table Bloat | Information about the current table bloat. The information includes: The name of the table The name of the schema in which the table resides The estimated number of pages The estimated number of wasted pages The estimated number of bytes per row | Database |
Table Frozen XID | Monitors the frozen XID of each table. | Schema |
Table Size | Information about table size. The information includes: Table size (in MB) Total index size (in MB) Total table size, with indexes and TOAST (in MB) | Database |
Table Statistics | Table statistics. The information includes: The number of sequential scans The number of sequential scan rows The number of index scans The number of index scan rows The number of rows inserted The number of rows updated The number of rows deleted The number of live rows The number of dead rows The last VACUUM The last auto-vacuum The last ANALYZE The last auto-analyze The number of pages estimated by ANALYZE The number of rows estimated by ANALYZE | Database |
Tablespace Size | A list of tablespaces and their sizes. | Server |
User Information | A list of the current users. The stored information includes: The user name The user type (superuser or non-superuser) The server to which the user is connected | Server |
WAL Archive Status | Status of the WAL archive. The stored information includes: The number of WAL archives done The number of WAL archives pending The last archive time The number of WAL archives failed The time of the last failure | Server |
xDB Replication | Lag data for clusters replicated using xDB replication. | Database |
Multixact ID Exhaustion (Wraparound) | Information about the multixact ID. The stored information includes: The name of the database The oldest current multixact ID in the database Percentage toward wraparound Percentage toward emergency autovacuum | Server |
Replication Slots | Information about the replication slots. The stored information includes: A unique, cluster-wide identifier for the replication slot. The base name of the shared object containing the output plugin this logical slot is using, or null for physical slot. The slot type: physical or logical. The OID of the database this slot is associated with, or null. Only logical slots have an associated database. The name of the database this slot is associated with, or null. Only logical slots have an associated database. Active field is True if this slot is currently actively being used. The oldest transaction that this slot needs the database to retain. VACUUM can't remove tuples deleted by any later transaction The oldest transaction affecting the system catalogs that this slot needs the database to retain. VACUUM can't remove catalog tuples deleted by any later transaction. The address (LSN) of oldest WAL, which still might be required by the consumer of this slot and thus won't be automatically removed during checkpoints. | Server |
EDB Postgres Distributed (PGD) probes
To monitor the EDB Postgres Distributed group using dashboards, you must enable the following probes. Configure these probes at extension level.
Note
Prior to version 8.4, all these probes are available at the server level.
The user with pgd_superuser can view information from all the following probes. If you are using a version of EDB Postgres Distributed earlier than 4.0, all these probes work with EDB Postgres Distributed Enterprise Edition.
Probe name | Information monitored by probe | pgd_monitor role required? | Works with PGD SE? |
---|---|---|---|
PGD Conflict History Summary | Information about row conflicts per conflict type. The stored information includes: The local time of the conflict The type of the conflict | Yes | Yes |
PGD Global Locks | Information about global locks in a EDB Postgres Distributed group. The stored information includes: The name of the node where the global lock originated The PID of the process holding the lock The type of lock (DDL or DML) The name of the locked relation (for DML Locks) or keys (for advisory locks) The internal state of the lock acquistion process The list of backends waiting for the same global lock The time when the global lock acquire was initiated by origin node The time when the local node started trying to acquire the local lock The time acquire_stage last changed | Yes | Yes |
PGD Group Camo Details | Information about camos in a EDB Postgres Distributed group. The stored information includes: The name of the node The node name for whom this node is partner The node name for whom this node is origin The connection status The readiness status The number of pending or unresolved camo transactions The LSN of last applied WAL log The LSN of last received WAL log | No | No |
PGD Group Replication Slot Details | Information about replication slots in a EDB Postgres Distributed group. The stored information includes: The name of the EDB Postgres Distributed group The name of the origin node The name of the target node The slot name on the origin node used by this subscription The active status The state of the replication (catchup,streaming, disconnected,..) The approximate lag time for reported write The approximate lag time for reported flush The approximate lag time for reported replay The bytes difference between sent_lsn and current WAL write position The bytes difference between write_lsn and current WAL write position The bytes difference between flush_lsn and current WAL write position | No | Yes |
PGD Group Subscription Summary | Information about the summary of subscriptions in the EDB Postgres Distributed group. The stored information includes: The name of the origin of the subscription The name of the target of the subscription The timestamp of the last replayed transaction The lag between now and time of last replayed transaction | No | Yes |
PGD Monitor Group Raft | The status and message of a cluster-wide raft check. | Yes | Yes |
PGD Group Raft Details | Information about raft consensus status from all the nodes in a EDB Postgres Distributed group. The stored information includes: The name of the node The raft worker state on the node The node id of the RAFT_LEADER The raft election internal id The raft snapshot internal id | Yes | Yes |
PGD Monitor Group Versions | The status and message of cluster-wide version check. | Yes | Yes |
PGD Group Versions Details | Information about version details of the installed Postgres, pglogical, EDB Postgres Distributed for each node in the EDB Postgres Distributed group. The stored information includes: The name of the node The installed Postgres version on the node The installed pglogical version on the node The version of the EDB Postgres Distributed on the node The EDB Postgres Distributed edition (Standard/Enterprise) for versions earlier than 4.0. | No | Yes |
PGD Node Replication Rates | Information about outgoing replication activity from a given node. The stored information includes: The name of the target peer node The latest sent position The latest position reported as replayed The approximate lag time for reported replay The bytes difference between replay_lsn and current WAL write position on origin The human-readable bytes difference between replay_lsn and current WAL write position Approximate time required for the peer node to catch up to all the changes that are yet to be applied | Yes | No |
PGD Node Slots | Information about the mapping of local EDB Postgres Distributed database nodes to replication slots, their status, and replication progress. The stored information includes: The name of the slot The name of the target node The name of the EDB Postgres Distributed group The database name on the target node The PID of the process attached to the slot The catalog XID needed by the slot The IP address of the client connection The latest sent position The latest position reported as replayed The approximate lag time for reported replay The bytes difference between replay_lsn and current WAL write position The human-readable bytes difference between replay_lsn and current WAL write position | Yes | Yes |
PGD Node Summary | Information about all the nodes in the EDB Postgres Distributed group. The stored information includes: The name of the node The name of the EDB Postgres Distributed group the node is part of The consistent state of the node in human-readable form The state which the node is trying to reach (during join or promotion) The name of subscribed repsets | Yes | Yes |
PGD Workers | Information about workers in a EDB Postgres Distributed node. The stored information includes: The PID of the worker process The worker query start timestamp The worker state change timestamp The worker wait event type The worker wait event The worker state The worker role name The worker commit timestamp The worker local timestamp The name of the origin node The receive LSN The receive commit LSN The last exact replay LSN The last exact flush LSN The last exact replay timestamp The worker query | Yes | Yes |
PGD Work Errors | Information about the work errors in EDB Postgres Distributed database node. The stored information includes: The process id of the worker causing the error The name of the EDB Postgres Distributed group the node is part of The name of the origin node The name of the source node The name of the target node The name of the subscription The internal identifier of the role of this worker The name of the role of this worker The date and time of the error The age of the error The description of the error The context in which the error happened The remote relation id The subscription writer id The subscription writer name | Yes | Yes |
Customizing probes
A probe is a scheduled task that returns a set of performance metrics about a specific monitored object. A probe retrieves statistics from a monitored server, database, operating system, or agent. You can use the Manage Probes tab to override the default configuration and customize the behavior of each probe.
To open the Manage Probes tab, select Management > Manage Probes. The Manage Probes tab provides a set of icons that you can use to create and manage probes:
- Select Manage Custom Probes to open the Custom Probes tab and create or modify a custom probe.
- Select Copy Probes to open the Copy Probe dialog box and copy the probe configurations from the currently selected object to one or more monitored objects.
Note
Copy Probe isn't supported for the extension-level probes.
A probe monitors a unique set of metrics for each object type (server, database, database object, or agent). Select the name of an object in the tree to review the probes for that object.
To modify the properties associated with a probe, select the name of a probe and customize the settings that are displayed in the Probes table:
- Move the Default switch in the Execution Frequency columns to N to enable the Minutes and Seconds selectors, and specify a custom value for the length of time between executions of the probe.
- Move the Default switch in the Enabled? column to No to change the state of the probe and indicate if the probe is active or not.
Note
If data from a disabled probe is used in a chart, the chart displays an information icon in the upper-left corner that allows you to enable the probe by clicking the provided link.
- Move the Default switch in the Data Retention column to No to enable the Day(s) field and specify the number of days that information gathered by the probe is stored on the PEM server.
The Manage Probes tab might display information about probes that you can't modify from the current node. If you can't modify a probe from the current dialog box, the switches are disabled. Generally, you can modify a disabled probe from a node that's higher in the hierarchy of the PEM client tree control. Select another object in the tree control to modify the probes that are displayed or enabled in the Manage Probes tab.
Creating a custom probe
You can use the PEM Custom Probes tab to create a new probe or modify an existing custom probe. To open the Custom Probes tab, from the Manage Probes tab, select Manage Custom Probes.
Use the Show System Probes? switch to show or hide the system probes on the Custom Probes tab.
You can use the Custom Probes tab to create a probe or modify an existing one. To create a probe:
- Select Add in the upper-right corner of the tab.
- Provide a name for the new probe in the Probe Name column.
- Select Edit (located to the left of the probe name) to review or add the probe definition.
Use the General tab to modify the definition of an existing probe or to specify the properties of a new probe:
Use the Probe Name field to provide a name for a new probe.
Use the Collection method field to specify the probe type. From the list, select:
- SQL — The probe gathers information by way of a SQL statement.
- WMI — The probe gathers information by way of a Windows Management Instrumentation extension.
- Batch — The probe uses a command-script or shell-script to gather information.
Before creating a batch probe on a Linux system, you must modify the
agent.cfg
file, setting theallow_batch_probes
parameter totrue
. Then restart the PEM agent. Theagent.cfg
file is located in one of the following directories:- If you installed PEM using graphical installer:
/opt/edb/pem/agent/etc/agent.cfg
- If you installed PEM using RPM:
/usr/edb/pem/agent/etc/agent.cfg
On Windows systems, agent settings are stored in the registry. Before creating a batch probe, modify the registry entry for the
AllowBatchProbes
registry entry and restart the PEM agent. PEM registry entries are located inHKEY_LOCAL_MACHINE\Software\EnterpriseDB\PEM\agent
.Batch probes are platform specific. If you specify a collection method of Batch, you must specify a platform type in the Platform field.
To invoke a script on a Linux system, you must modify the entry for the
batch_script_user
parameter of theagent.cfg
file and specify the user to use to run the script. You can either specify a non-root user or root for this parameter. If you don't specify a user or the specified user doesn't exist, then the script doesn't run. Restart the agent after modifying the file.To invoke a script on a Windows system, set the registry entry for
AllowBatchJobSteps
totrue
and restart the PEM agent.Use the Target Type list to select the object type for the probe to monitor. Target Type is disabled if Collection method is WMI. Configure Target Type in probes to ensure that the collected metrics are relevant and accurate for the intended level of the system hierarchy. By setting the target type, you can effectively monitor various components, ranging from individual database objects like tables and indexes to server-wide monitoring.
Target type configuration matrix
The following table provides an overview of the target type configurations, their monitoring scope, and the mandatory fields for configuring them.
In this table:
- The Target type column determines the object you want to monitor with the probe.
- The Execution level column determines if the monitoring probes execute once per database, per server, per agent, or per extension level.
- The Mandatory columns column indicates the coloumns you must configure in the probe query to ensure the required data is collected.
- The Probe examples column provides some existing probes you can explore to better understand how probes are used in practice.
Target type Execution level Mandatory columns Probe examples Agent Agent None cpu_usage Server Server None server_info Database Database None database_size Schema Database schema_name oc_extension Table Database schema_name, table_name table_size Index Database schema_name, index_name index_size Sequence Database schema_name, sequence_name oc_sequence View Database schema_name, view_name mview_size Function Database schema_name, arg_types, function_type, function_name function_statistics Extension Extension None bdr_node_summary Note
- The custom probes set to a database or larger target type (including schema, table, index, view, sequence, and functions) collect the information at the database level.
- The system probes set to a schema or larger target type collect the information up to the schema level.
Proper configuration of the Target Type in probes ensures that the collected metrics are relevant and accurate for the intended level of the system hierarchy. By setting the appropriate target type, users can effectively monitor various components, from the server level down to individual database objects like tables and indexes.
Use the Minutes and Seconds selectors to specify how often the probe collects data.
Use the Probe Enable? switch to specify if the probe in enabled by default. Specify Yes to enable the probe by default or No to disable the probe by default.
Note
If data from a disabled probe is used in a chart, the chart displays an information icon in the upper-left corner that allows you to enable the probe by clicking the provided link.
- Use the Data Retention field to specify the number of days that gathered information is retained in the probe's history table.
- Use the switch next to Discard from history to specify if the server creates a history table for the probe. Select Yes to discard probe history or No to retain the probe history in a table.
- Use the Platform list to specify the type of platform that the probe monitors. This field is enabled only when the Collection method is Batch.
Use the Columns tab to define the columns in which to store the probe data. To define a new column:
- Navigate to the Columns tab and select Add in the upper-right corner.
- In the Name field, provide a column name.
- Select Edit (to the left of the new column name) to provide information about the column:
Provide a descriptive name for the column in the Name field.
The Internal Name field isn't enabled for custom probes.
Use the Column Type list to specify if the column is a key column (a primary key) or a non-key column. Non-key columns are generally metric items (values that can be graphed).
Use the Data Type list to specify the type of data to store in the column.
Use the Unit field to specify the unit of measure that applies to the metric stored in the column. This unit is displayed on the y-axis of a custom chart or a Capacity Manager chart. This is an optional field.
Use the Graphable switch to specify if the defined metric can be graphed and to make the probe accessible from the Capacity Manager or Manage Charts dialog boxes.
Use the Is PIT switch to specify whether to store the metric by point-in-time.
Point-in-time metrics change (increase or decrease) at any given point of time. For example, database size is a point-in-time metric. At any given point-in-time, the size of the database is fluctuating. Metrics that aren't point-in-time (also referred to as cumulative metrics) are those whose size always increases over time. For example, Blocks Read and Tuples Read are cumulative metrics. The value stays the same or increases.
Use the Calculate PIT switch to specify for the server to calculate a point-in-time value for the metric data. Calculate PIT is disabled if Is PIT is Yes.
PEM allows you to store point-in time-values of cumulative metrics as well. PEM subtracts the last collected value of a cumulative metric from the current value and stores the difference as a point-in-time value.
Use the Code tab to specify the default code for the propbe to execute:
If the probe is a SQL probe, you must specify the SQL SELECT statement invoked by the probe on the Code tab. The column names returned by the query must match the Internal Name specified on the Columns tab. The number of columns returned by the query, as well as the column name, data type, and so on, must match the information specified on the Columns tab.
If the probe is a batch probe, you must specify the shell or .bat script to invoke when the probe runs. The output of the script is as follows:
The first line must contain the names of the columns provided on the Columns tab. Each column name must be separated by a tab (t) character. From the second line onwards, each line must contain the data for each column, separated by a tab character.
If a specified column is defined as a key column, make sure that the script doesn't produce duplicate data for that column across lines of output. The number of columns specified in the Columns tab and their names, data type, and so on must match with the output of the script output.
If the probe is a WMI probe, you must specify the WMI query as a SELECT WMI query. The column name referenced in the SELECT statement must be same as the name of the corresponding column specified on the Column tab. The column names returned by the query must match the Internal Name specified on the Columns tab. The number of columns returned by the query, as well as the column name, data type, and so on, must match the information specified on the Columns tab.
Use the Alternate Code tab to provide code to invoke if the probe fires on a specific version of the server. To provide version-specific code, move the Applies to any server version? switch to No and select Add. Then, use the Database Version(s) list to select a version, and select Edit (to the left of the version name) to provide the code to execute when the probe fires.
If you select a database version and leave the Probe Code column blank, PEM invokes the code specified on the Code tab when the probe executes on a server that matches that version.
When you've finished defining the probe, select Save (in the corner of the Custom Probes tab) to save the definition and make the probe data available for use on custom charts and graphs.
Exporting or importing a probe
To export the probe, select any probes from the Manage Custom Probes tab, and then select Export in the upper-right corner of the table. To generate the JSON file, select Save File and then select OK.
To import the probe, on the Manage Custom Probes tab, select Import in the upper-right corner of the table. Select Browse to select the JSON file with the probe code to import, and then select Import.
After selecting the file to import, you can select the Skip existing check box. This option skips the probe if it already exists and displays a message letting you know that the import was skipped.
If you don't select the check box and the probe already exists, then it doesn't import the probe and an error message is reported.
!!! Note Import can't overwrite the existing probe as it might be configured to retain historical data as per the configured retention policy.
If you don't select the check box and the probe doesn't exist but the corresponding table in the
pem
schema does, then it imports the probe successfully using the same table.
Note
It's possible for the probe to be deleted and not listed on Manage Custom Probe tab and for the table holding the data of that probe to exist in the pem
schema.
Deleting a probe
You can delete only custom probes. To delete a probe, select the probe name in the probes table, and select Delete (located to the upper-right corner of the table). The probe history persists for the length of time specified in the History Retention field in the probe definition. During the deletion, the probe definition is deleted and any corresponding tables are dropped from the pemdata
and pemhistory
schemas.
System probes are the built-in probes provided by PEM and are part of the PEM schema. You can only modify system probes. If you attempt to delete a system probe, PEM reports an error.
Copying a probe
You can use the Copy Probe Configuration dialog box to copy probe definitions from one monitored object to one or more monitored objects of the same type. To open the Copy Probe Configuration dialog box:
- Un the PEM client tree, select the object from which you are copying probes.
- Select Management > Manage Probes.
- From the Manage Probes tab, select Copy Probe.
The dialog box copies the probe definitions from the object from which you opened the Copy Probe Configuration dialog box to the locations selected on the tree control.
If you specify a parent node in the Copy Probe Configuration tree, PEM copies the probe configurations to each object of the same type that resides under that node in the tree. For example, to copy the probe definitions from one schema to all schemas that reside in a database, select only the parent database of the target schemas. A red warning symbol is displayed to the left of the name of a listed target object if that object is the source of the probe that's being copied.
After you select the target object or objects, select Configure Probes to copy the probe definitions to the location selected in the dialog box.
Managing probes using pemworker
From version 9.6, you can enable and disable a probe using the pemworker utility using --probe-display-name
, --probe-internal-name
, or --probe-id
option.
Examples
On Linux
This example shows how to disable a probe using the probe display name:
This example shows how to enable a probe using the probe display name:
On Windows
This example shows how to disable a probe using the probe display name:
This example shows how to enable a probe using the probe display name:
PEM probes - reference
A probe is a scheduled task that retrieves information about the database objects that are being monitored by the PEM agent. PEM uses the collected information to build the graphs displayed on each dashboard. The Manage Probes tab (accessed from the Management menu) allows you to modify the data collection schedule and the length of time that PEM retains information returned by a specific probe.
Name | Information monitored | Level |
---|---|---|
Background Writer Statistics | Information about the background writer. The information includes: The number of timed checkpoints The number of requested checkpoints The number of buffers written (by checkpoint) The number of buffers written (by background writer) The number of background writer cycles The number of background buffers written The number of buffers allocated | Server |
Blocked Session Information | Information about blocked sessions. | Server |
CPU Usage | CPU Usage information. | Agent |
Data and Log File Analysis | Information about log files. The information includes: The name of the log file The directory in which the log file resides | Server |
Database Frozen XID | The frozen XID of each database. | Server |
Database Size | Information about the size of the monitored databases. The information includes: The time the information was gathered The database name The database size (in MB). | Server |
Database Statistics | Database statistics. The information includes the number of: Backends Transactions committed Transactions rolled back Blocks read Blocks hit Rows returned Rows fetched Rows inserted Rows updated Rows deleted | Server |
Disk Busy Info | Information about disk activity. Note: This probe isn't supported on Mac OS X, Solaris, or HP-UX. | Agent |
Disk Space | Information about disk space usage. The information includes: The amount of disk space used The amount of disk space available | Agent |
EDB Audit Configuration | The audit logging configuration of EDB Postgres Advanced Server. | Server |
Failover Manager Cluster Info | Monitors a Failover Manager cluster, returning information about the cluster. This probe is enabled when you provide a cluster name and path of the Failover Manager binary in the Server Properties dialog box. | Server |
Failover Manager Node Status | Monitors a Failover Manager cluster, returning detailed about each node in the cluster. This probe is enabled when you provide a cluster name and path of the Failover Manager binary in the Server Properties dialog box. | Server |
Function Statistics | Monitors a database, retrieving information about functions. The information includes: Function names Argument types Return values | Database |
Index Size | Monitors a database, retrieving information about indexes. The information includes: The name of the index The time the data was gathered The size of the index (in MB) | Database |
Index Statistics | Index statistics. The information includes the number of: Index scans Rows read Rows fetched Blocks read Blocks hit | Database |
Installed Packages | The packages that are currently installed. The information gathered includes: The name of the installed package The version of the installed package The date and time that the probe executed | Agent |
IO Analysis | Monitors disk I/O information. The information includes: The number of blocks read The number of blocks written The date and time that the probe executed Note: This probe isn't supported on Mac OS X. | Agent |
Load Average | CPU load averages. The information includes: The 1-minute load average The 5-minute load average The 15-minute load average Note: This probe isn't supported on Windows. | Agent |
Lock Information | Monitors lock information. The information includes: The database name The lock type The lock mode The process holding the lock | Server |
Memory Usage | Information about system memory usage. The information includes: Total RAM in MB Free RAM in MB Total swap memory in MB Free swap memory in MB Shared system memory in MB (used by tuning wizard to tune the memory parameters for the database server) - On non-Windows system, it's the shmmax value and read from /proc/sys/kernel/shmmax .- On Windows, it's same as total memory. | Agent |
Network Statistics | Network statistics. The information includes: The interface IP address The number of packets sent The number of packets received The number of bytes sent The number of bytes received The link speed (in MB/second) | Agent |
Number of Prepared Transactions | Stores the number of prepared transactions. | Server |
Number of WAL Files | The number of WAL files. | Server |
Object Catalog: Database | Monitors a list of databases and their properties. The information includes: The database name The database encoding type If the database allows user connections or system connections | Server |
Object Catalog: Foreign Key | Monitors a list of foreign keys and their properties. The information includes: The name of the table that contains the foreign key The name of the table that the foreign key references The name of the database in which the table resides The name of the schema in which the table resides | Schema |
Object Catalog: Function | Monitors a list of functions and their properties. The information includes: The name of the function The name of the schema in which the function resides The name of the database in which the function resides | Schema |
Object Catalog: Index | Monitors a list of indexes and their properties. The information includes: The name of the index The name of the table that the index is associated with The name of the database in which the indexed table resides | Schema |
Object Catalog: Schema | Monitors a list of schemas and their associated databases and servers. | Database |
Object Catalog: Sequence | Monitors a list of sequences and their properties. | Schema |
Object Catalog: Table | Monitors a list of table information. The information includes: The table name The name of the schema in which the table resides The name of the database in which the schema resides A Boolean indicator that shows whether the table has a primary key | Schema |
Object Catalog: Tablespace | Monitors a list of tablespaces. | Server |
Operating System Information | The operating system details and boot time. | Agent |
Package Catalog | The packages that are currently available for installation. The information gathered includes: The package name The package version | Agent |
PG HBA Conf | Authentication configuration information from the pg_hba.conf file. | Server |
Server Information | Server information. | Server |
Session Information | Session information. The information includes: The name of the session user The date and time that the session connected to the server The status of the session at the time that the information was gathered (idle, waiting, and so on) The client address and port number | Server |
Settings | The values currently assigned to GUC variables. | Server |
SQL Protect | Monitors a server, retrieving information about SQL injection attacks. | Server |
Slony Replication | Lag data for clusters replicated using Slony. | Database |
Streaming Replication | Monitors a cluster that's using streaming replication, retrieving information about: The sent Xlog location (in bytes) The write Xlog location (in bytes) The flush Xlog location (in bytes) The replay Xlog location (in bytes) The Xlog lag (in segments) The Xlog lag (in pages) | Server |
Streaming Replication Lag Time | Monitors a cluster that's using streaming replication, retrieving lag information about: Replication lag time (in seconds) Current status of replication (running/paused) | Server |
Streaming Replication Database Conflicts | Monitors a database that's using streaming replication, retrieving information about any conflicts that arise. This includes information about queries that were canceled due to the number of: Drop tablespace conflicts Lock timeout conflicts Old snapshot conflicts Pinned buffer conflicts Deadlock conflicts | Server |
Table Bloat | Information about the current table bloat. The information includes: The name of the table The name of the schema in which the table resides The estimated number of pages The estimated number of wasted pages The estimated number of bytes per row | Database |
Table Frozen XID | The frozen XID of each table. | Schema |
Table Size | Information about table size. The information includes: Table size (in MB) Total index size (in MB) Total table size, with indexes and TOAST (in MB) | Database |
Table Statistics | Table statistics. The information includes: The number of sequential scans The number of sequential scan rows The number of index scans The number of index scan rows The number of rows inserted The number of rows updated The number of rows deleted The number of live rows The number of dead rows The last VACUUM The last auto-vacuum The last ANALYZE The last auto-analyze The number of pages estimated by ANALYZE The number of rows estimated by ANALYZE | Database |
Tablespace Size | A list of tablespaces and their sizes. | Server |
User Information | A list of the current users. The stored information includes: The user name The user type (superuser or non-superuser) The server to which the user is connected | Server |
WAL Archive Status | The status of the WAL archive. The stored information includes: The number of WAL archives done The number of WAL archives pending The last archive time The number of WAL archives failed The time of the last failure | Server |
xDB Replication | Monitors lag data for clusters replicated using xDB replication. | Database |