Google Cloud AlloyDB Instance monitoring integration
Monitor your Google Cloud AlloyDB instances to track CPU and memory utilization, connection counts, replication lag, transaction throughput, and query performance. Google Cloud AlloyDB Instance monitor lets you maintain a responsive, high-performance PostgreSQL-compatible database instance.
Benefits
Monitoring AlloyDB Instance ensures that your service remains reliable, secure, and high-performing. Key benefits include:
- Identify CPU, memory, or connection pressure before it degrades query performance.
- Track replication lag across read pool instances to fine-tune read scaling.
- Automated alerts and IT automation help maintain SLA compliance and reduce downtime.
- Consolidate AlloyDB Instance metrics with other GCP services for a single pane of glass view.
- Bulk configuration and agent upgrades ensure smooth monitoring across multiple instances.
Use cases
Here are some use cases where Google Cloud AlloyDB Instance monitoring will be helpful:
- Monitor CPU and memory utilization to detect resource pressure in real time.
- Capture replication lag trends to quickly identify struggling read replicas.
- Visualize connection counts and transaction rates to plan capacity and optimize scaling.
- Set thresholds for CPU utilization and connection limits to ensure contractual obligations are met.
- Track deadlocks and wait events to strengthen query performance tuning.
- Integrate AlloyDB Instance monitoring with other GCP services (Compute Engine, Cloud SQL, BigQuery) for holistic visibility.
Setup and configuration
- Adding Google Cloud AlloyDB Instance while configuring a new Google Cloud monitor
If you have not configured a Google Cloud monitor yet, add one by following the steps below:
- Go to Cloud > GCP > Add GCP Monitor or Admin > Cloud Monitoring > Google Cloud Platform (GCP).
- Provide a unique display name for identification purposes.
- Upload the JSON file that contains the private key of the service account to authenticate and perform resource discovery.
- Select AlloyDB Instance from the Select the Resources for Monitoring list.
- Select existing Notification Profiles, User Alerts Groups, Tags, and IT Automation Templates or add new ones. You can also integrate alarms with your preferred third-party service.
- Click Start GCP Monitoring.
- Adding Google Cloud AlloyDB Instance to an existing Google Cloud monitor
If you already have a Google Cloud monitor configured for the service account, you can add Google Cloud AlloyDB Instance by following the steps below:
- Go to Cloud > GCP and select your GCP monitor.
- Click the hamburger
icon next to Service View and select Edit, which brings you to the Edit GCP Monitor page. - On the Edit GCP Monitor page, select AlloyDB Instance from the Select the Resources for Monitoring list and click Save.
- After successful configuration, go to Cloud > GCP > AlloyDB Instance. Now you can view the discovered Google Cloud AlloyDB Instance resources.
It will take approximately five minutes to discover new GCP resources.
Licensing
Each Google Cloud AlloyDB Instance monitor consumes one basic monitor license.
Polling frequency
AlloyDB instance metrics arrive with about a 4-minute delay.
Supported metrics
| Metric name | Description | Statistic | Unit |
|---|---|---|---|
| Average CPU Utilization | The average CPU utilization of this instance. | Average | Percentage (%) |
| Maximum CPU Utilization | The maximum CPU utilization observed on this instance. | Average | Percentage (%) |
| Minimum Available Memory | The minimum amount of memory available on this instance during the collection period. | Average | Bytes |
| Total Connections | The total number of active connections to this instance. This count includes all the connections across nodes, both active and idle. | Average | Count |
| Transaction Rate | The rate of PostgreSQL transactions processed by this instance. | Total | Count/second |
| Commit Rate | The rate of transaction commits processed by this instance. | Total | Count/second |
| Abort Rate | The rate of transaction aborts (rollbacks) in this instance. | Total | Count/second |
| Maximum Replication Lag | The maximum replication lag observed between this instance and its replicas. | Average | Milliseconds |
| vCPUs | The number of virtual CPUs provisioned for this instance. | Average | Count |
| Nodes Up | The number of nodes in this instance that are currently up and serving. | Average | Count |
| Nodes Down | The number of nodes in this instance that are currently down. | Average | Count |
| Ultrafast Cache Hit Rate | The percentage of reads served from AlloyDB's ultrafast cache rather than disk. | Average | Percentage (%) |
| Transaction ID Utilization | The percentage of available transaction IDs consumed before a wraparound vacuum is required. | Average | Percentage (%) |
| Oldest Transaction Age | The age, in transaction IDs, of the oldest unvacuumed transaction on this instance. | Average | Count |
| Connections Limit | The maximum number of concurrent connections allowed in this instance. | Average | Count |
| Average Connections | The average number of all active and idle connections per serving node. | Average | Count |
| Active Connections | The number of connections currently active on this instance. | Average | Count |
| Idle In Transaction Connections | The number of connections currently idle while inside an open transaction. | Average | Count |
| Top Application Connections | The number of backend connections broken down by the top connecting applications. | Average | Count |
| New Connection Rate | The rate at which new connections are established to this instance. | Total | Count/second |
| Deadlock Count | The number of deadlocks detected in this instance. | Total | Count |
| Maximum Secondary Lag | The maximum replication lag observed on secondary cluster behind the primary. | Average | Milliseconds |
| Replication Network Lag | The network-level replication lag between this instance and its replicas. | Average | Milliseconds |
| Read Replicas | The number of read replicas associated with this instance. | Average | Count |
| Wait Time | The total time backend processes spent waiting on locks or other resources. | Total | Microseconds |
| Wait Count | The number of times backend processes had to wait on locks or other resources. | Total | Count |
| Fetched Tuple Rate | The rate at which rows (tuples) are fetched by queries on this instance. | Total | Count/second |
| Returned Tuple Rate | The rate at which rows (tuples) are returned by sequential scans on this instance. | Total | Count/second |
| Inserted Tuple Rate | The rate at which rows (tuples) are inserted in this instance. | Total | Count/second |
| Updated Tuple Rate | The rate at which rows (tuples) are updated in this instance. | Total | Count/second |
| Deleted Tuple Rate | The rate at which rows (tuples) are deleted in this instance. | Total | Count/second |
| Written Tuple Rate | The rate at which rows (tuples) are written to disk on this instance. | Total | Count/second |
| Buffer Hit Rate | The rate at which requested data blocks were found already in the buffer cache. | Total | Count/second |
| Disk Block Read Rate | The rate at which data blocks had to be read from disk, bypassing the buffer cache. | Total | Count/second |
| Temp Bytes Rate | The rate at which temporary files are written to disk for operations like large sorts, in bytes per second. | Total | Bytes/second |
| Temp File Rate | The rate at which temporary files are created on disk for operations like large sorts. | Total | Count/second |
Configuration details
| Attribute | Description |
|---|---|
| Name | The display name of the instance. |
| State | The current operational state of the instance (for example, READY or CREATING). |
| Instance Type | The role of this instance within the cluster (for example, PRIMARY or READ_POOL). |
| Availability Type | Indicates whether this instance is zonal or regional (highly available). |
| CPU Count | The number of vCPUs provisioned for this instance. |
| Zone | The zone this instance is deployed in. |
| Activation Policy | The policy controlling whether this instance is always on or can be stopped. |
| Maintenance Version | The maintenance version currently applied to this instance. |
| SSL Mode | The SSL/TLS enforcement mode configured for connections to this instance. |
| Query String Length | The maximum query string length captured for Query Insights. |
| Query Plans Per Minute | The maximum number of query plans captured per minute for Query Insights. |
| Enhanced Query Insights | Indicates whether enhanced Query Insights is enabled for this instance. |
| UID | The unique identifier assigned to this instance. |
| Create Time | The date and time this instance was created. |
| Update Time | The date and time this instance was last updated. |
Threshold configuration
- Global configuration
- In the web client, go to the Admin section on the left navigation pane.
- Select Configuration Profiles from the left pane and select Threshold and Availability from the drop-down menu.
- Click Add Threshold Profile in the top-right corner.
- For Monitor Type, select AlloyDB Instance.
- Specify the threshold values for the required metrics, then click Save.
- Monitor-level configuration
- In the web client, go to Cloud > GCP > AlloyDB Instance.
- Select a resource you would like to set a threshold for, then click the hamburger
icon. - Select Edit, which directs you to the Edit AlloyDB Instance Monitor page.
- Specify the threshold values for the required metrics, then click Save.
Monitor status is decided is decided based on the status of AlloyDB Instance:
- Up: READY, CREATING, STARTING, BOOTSTRAPPING, MAINTENANCE, PROMOTING, or SWITCHOVER.
- Down: STOPPED, STOPPING, FAILED, or DELETING.
IT Automation
IT Automation tools automatically resolve performance degradation issues. These tools react to events proactively rather than waiting for manual intervention. The IT Automation tools automate repetitive tasks and automatically remediate threshold breaches. The alarm engine continually evaluates system events for which thresholds are set and executes the mapped automation when there is a breach.
Configuration Rules
Editing multiple monitors to associate different monitor groups or add a different tag can be a tedious process. With Configuration Rules, you can automate the configuration settings of your monitoring resources. Create custom rules to track configuration changes continuously and achieve the ideal configuration settings.
Summary
The Summary tab will give you the performance data organized by time for the metrics listed above. To view the summary:
- Go to Cloud > GCP > AlloyDB Instance.
- Select a resource.
- Click the Summary tab.
Configuration Details
The Configuration Details tab provides details on the configurations of application instances. To get the configuration details:
- Go to Cloud > GCP > AlloyDB Instance.
- Select a resource.
- Click the Configuration Details tab.
Reports
Gain in-depth data about the various parameters of your monitored resources and accentuate your service performance using our insightful reports.
To view reports for a Google AlloyDB Instance resource:
- Go to the Reports section on the left navigation pane.
- Select AlloyDB Instance from the menu on the left.
- You can find the Availability Summary Report, Performance Report, and Inventory Report for one selected monitor. Or you can get the Summary Report, Availability Summary Report, Health Trend Report, and Performance Report for all the Google AlloyDB Instance monitors.
You can also get reports from the Summary tab of the Google AlloyDB Instance monitor:
- Click the Summary tab.
- Get the Availability Summary Report of the monitor by clicking Availability.
- You can also find the Performance Report of the monitor by clicking any chart title.
