You can register databases and geodatabases in PostgreSQL to collect metrics and attribute information.
Prerequisites for monitoring
The following prerequisites are necessary for monitoring databases and geodatabases in PostgreSQL:
- The database instance must be running PostgreSQL 10.17 or later.
- The firewall must allow communication between the PostgreSQL instance and the ArcGIS Monitor machine where it will be registered on port 5432.
Note:
If the PostgreSQL instance is configured to run on a different port, communication must instead be allowed on that port.
- The role (user account) that you use to register the database must be assigned the PostgreSQL LOGIN attribute.
Register databases for monitoring
You must be assigned the Administrator or Manager role to register components.
- Access ArcGIS Monitor, if necessary.
The Home page appears.
- Click Monitoring.
The Monitoring page appears with a list of components sorted alphabetically by component name.
- Click Register component.
The Register component wizard appears.
Note:
If you don't have sufficient privileges, Register component is not available.
- Choose the ArcGIS Monitor Server or ArcGIS Monitor Agent machine that has network access to the component that you want to register and click Next.
The Component type page appears.
- Under Database, choose PostgreSQL and click Next.
The Component details page appears.
- Type a name for the component in the Component name text box.
- Optionally, type a description for the component in the Description text box.
- Optionally, click Apply Labels and choose the labels that you want to apply to the component.
Tip:
Type the name of a label in the Enter label name text box to search for a specific label. If the label that you want to add doesn't exist, type the name of the label that you want to create in the Enter label name text box and click Create new label to add the label and apply it to the component.
- Click Next.
The Connection page appears.
- Type the fully qualified domain name and port number or IP address and port number of the database instance that you want to register in the Address text box.
Tip:
The default port number for PostgreSQL is 5432.
- Type the name of the database that you want to register in the Database text box.
- Provide the credentials for the database in the Username and Password text boxes.
- Check the Require encryption check box if the database requires encrypted connections.
- Click Register component.
The component is added to the list of monitored components on the Monitoring page.
Once a component is registered, you can configure alert rules and add the component to collections.
Note:
Other component types, such as the enterprise GIS implementation's underlying hardware infrastructure and ArcGIS software, must be registered individually to enable monitoring.
Observers
The following table describes the observers that are responsible for collecting attribute and metric data:
Observer name | Description |
---|---|
Discover | The Discover observer scans for changes and manages attribute data across the registered PostgreSQL database. It also detects enterprise geodatabase schemas to enable related metrics. The default interval for this observer is 10 minutes; however, you can configure it to run at longer intervals since changes to the underlying database configuration are expected to be infrequent. |
Metrics | The Metrics observer collects metric data across the registered PostgreSQL database. If an enterprise geodatabase schema is not detected by the Discover observer, geodatabase-related metrics are not collected. The default interval for this observer is 1 minute; however, you can configure it to run at longer intervals since significant database variations are expected to be infrequent. |
Collected attributes
The subsections below describe the attributes that are collected for registered databases and geodatabases in PostgreSQL.
Database attributes
The following table lists the attributes that are collected for databases in PostgreSQL:
Attribute name | Description | Data type |
---|---|---|
Memory total | The total amount of physical memory for the database instance | Float |
Started at | The last start time of the database instance | Datetime |
UTC offset | The UTC time zone offset for the database instance | Integer |
Version | The software version of the PostgreSQL instance | String |
Geodatabase attributes
The following table lists the attributes that are collected for geodatabases in PostgreSQL:
Attribute name | Description | Data type |
---|---|---|
Geodatabase version | The version of the enterprise geodatabase | String |
Collected metrics
The subsections below describe the metrics that are collected for registered databases and geodatabases in PostgreSQL.
Database metrics
The following table lists the metrics that are collected for databases in PostgreSQL:
Metric name | Description | Data type | Unit |
---|---|---|---|
Cache Hit | The percentage of requests served from the cache, as opposed to requests served from disk | Float | Percent |
Connectivity - <Discover observer r_id> | The observer's ability to successfully connect to the component | Float | Percent |
Connectivity - <Metrics observer r_id> | The observer's ability to successfully connect to the component | Float | Percent |
Database Sessions | The number of open sessions in the database | Float | Total |
Open Cursors | The number of open cursors in the database | Float | Total |
Geodatabase metrics
The following table lists the metrics that are collected for geodatabases in PostgreSQL:
Metric name | Description | Data type | Unit |
---|---|---|---|
GDB Branch Version Conflicts | The total number of branch version conflicts in the geodatabase | Float | Total |
GDB Branch Version Locks | The total number of locks on branch versions in the geodatabase | Float | Total |
GDB Branch Versions | The total number of branch versions in the geodatabase | Float | Total |
GDB Connections | The total number of active connections to the geodatabase | Float | Total |
GDB Connections - editors | The total number of active editor connections to the geodatabase | Float | Total |
GDB Connections - viewers | The total number of active viewer connections to the geodatabase | Float | Total |
GDB Default Version Depth | The depth in the state tree of the default version | Float | Total |
GDB Shared Locks | The total number of shared table locks in the geodatabase | Float | Total |
GDB State Lineages | The total number of edits in the geodatabase for datasets that use traditional versioning | Float | Total |
GDB Version States | The total number of states in the geodatabase for datasets that use traditional versioning | Float | Total |
GDB Versions | The total number of versions in the geodatabase that use traditional versioning | Float | Total |
Default alert rules
The following table lists the default alert rules that are configured for databases in PostgreSQL:
Metric name | Aggregation | Operator | Info threshold | Warning threshold | Critical threshold | Samples |
---|---|---|---|---|---|---|
Cache Hit | Average | Is less than | 90 | — | — | 3 |
Connectivity - <Discover observer r_id> | Average | Is less than | — | — | 100 | 2 |
Connectivity - <Metrics observer r_id> | Average | Is less than | — | — | 100 | 2 |
Note:
The default alert rules in the table above are the rules that are configured for components when Monitor is first deployed. If your Monitor administrator has configured default alert rules for the Monitor deployment, the values for the rules above may vary.