Monitor Cloud SQL instances

This page describes how you can monitor Cloud SQL instances in the following ways:

Monitor an instance by using the Cloud Monitoring dashboard

Cloud Monitoring offers predefined dashboards for several Google Cloud products, including a default Cloud SQL monitoring dashboard. You can use this dashboard to monitor the general health of your primary and replica instances. You can also create your own custom dashboards to display data that's of interest to you.

Set up alerts

You can use Cloud Monitoring to set up alerts for a project or a specified instance.

For example, you can set up an alert for a message to be sent to specific email IDs when the Memory usage metric for a Cloud SQL instance exceeds the threshold of 80%.

View metrics on the Cloud SQL instance Overview page

View some of the key metrics for a Cloud SQL instance on its Overview page as follows:

  1. In the Google Cloud console, go to the Cloud SQL Instances page.

    Go to Cloud SQL Instances

  2. To open the Overview page of an instance, click the instance name.
  3. The default metrics chart appears at the top of the page.

  4. Optional: Select another metric from the Chart drop-down list.

    The chart shows the data for the selected metric.

The list includes the following options:
  • CPU utilization
  • Active connections
  • Storage usage
  • Memory usage
  • Read/write operations
  • Ingress/Egress bytes
  • MySQL queries
  • MySQL questions
  • Read/write InnoDB pages
  • InnoDB data fsyncs
  • InnoDB log fsyncs
  • Replication lag (for read replicas)

Available metrics

The usage charts help you respond proactively as your application needs change. From these metrics, you can gain insights into issues of throughput and latency as well as instance usage costs.

MetricDescription
Storage usage (GB)

You can use the storage usage metric to help you understand your storage costs. For more information about storage usage charges, see Storage and Networking Pricing.

Binary logs use storage space. Binary logs are automatically deleted with their associated automatic backup, which generally happens after about 7 days. You cannot manually delete binary logs, nor change the 7-day period.

If the size of your binary logs are causing an issue for your instance, you can increase your storage size, but the binary log size increase in disk usage might be temporary. To avoid unexpected storage issues, we recommend enabling automatic storage increases for all instances.

You can disable and then re-enable binary logging, which deletes binary logs. Note, however, that decreasing the write-ahead logs used doesn't shrink the size of the disk provisioned for the instance.

Temp data is included in the storage usage metric. Temp data is removed as part of maintenance and is allowed to increase beyond user-defined capacity limits to avoid a disk full event, at no charge to the user.

A newly created database uses several hundred MB for system tables and files.

CPU usage

You can use this metric to monitor whether your instance has sufficient CPU for your application needs. If this value is running too high, you can increase the size of your machine type to give your instance more CPU capability.

Memory usage

The amount of memory being used by your instance.

Read/write operations

The Number of Reads metric is the number of read operations served from disk that do not come from cache. You can use this metric to help you understand whether your instance is correctly sized for your environment. If needed, you can move to a larger machine type to serve more requests from cache and reduce latency.

The Number of Writes metric is the number of write operations to disk. Write activity is generated even if your application is not active, because Cloud SQL instances write to a system table approximately every second (except for replicas).

Active connections Number of open connections to the Cloud SQL instance.
Ingress/Egress bytes (bytes/sec) The amount of network traffic coming into or leaving the instance.
MySQL queries (queries/sec) The number of statements executed by the server. To see what statements are measured as queries, see Server Status Variables in the MySQL Reference Manual.
MySQL questions (questions/sec) The number of statements executed by the server sent by clients. To see what statements are measured as questions, see Server Status Variables in the MySQL Reference Manual.
Read/write InnoDB pages (pages/sec) The number of InnoDB pages read and written. For more information, see InnoDB Startup Options and System Variables in the MySQL Reference Manual.
InnoDB data fsyncs (operations/sec) The number of InnoDB fsync() calls. For more information, see InnoDB Startup Options and System Variables in the MySQL Reference Manual.
InnoDB log fsyncs (operations/sec) The number of InnoDB fsync() calls to the log file. For more information, see InnoDB Startup Options and System Variables in the MySQL Reference Manual.
Instance state The state of your instance is indicated by the status icon, next to the instance name. You can also monitor the cloudsql.googleapis.com/database/instance_state metric.

Compare metrics from multiple instances

  1. In the Google Cloud console, go to the Cloud SQL Instances page.

    Go to Cloud SQL Instances

  2. From the Cloud SQL Instances page, choose up to five instances to compare by selecting the checkbox to the left of the instance name.
  3. On the Info Panel on the right, select the Monitoring tab.
  4. From the metrics drop-down, select the metric to use for comparing instances.

    You can see the data for a specific moment by holding the pointer over the chart.

What's next