Google Cloudインテグレーション - Cloud SQL

MackerelはGoogle CloudインテグレーションにてCloud SQLのメトリック取得や監視に対応しています。 Google Cloudインテグレーションで連携をおこなった場合、課金対象として 1インスタンス = 1マイクロホスト と換算します。またそれに加えて、取得されるメトリックの数に応じて、1マイクロホストあたりのメトリック数上限の超過による請求が行われる場合があります。

Google Cloudインテグレーションの設定方法や対応済みGoogle Cloudサービスの一覧についてはこちらのページをご確認ください。
Google Cloudインテグレーション

必要なAPI

Cloud SQL連携を利用するためには、以下のAPIが有効になっている必要があります。

  • Cloud SQL Admin API(sqladmin.googleapis.com)

必要なロール

Cloud SQL連携を利用するためには、サービスアカウントに以下のロールが必要です。

  • Cloud SQL 閲覧者(roles/cloudsql.viewer)

取得メトリック

Google CloudインテグレーションのCloud SQL対応で取得できるメトリックは以下の通りです。メトリック の説明に関してはGoogle Cloudのドキュメントをご確認ください。

Cloud SQL for MySQLの場合

最大で 27 個のメトリックが取得されます。

グラフ名 指標タイプ Mackerel上のメトリック名 単位
Auto failover request count database/auto_failover_request_count cloudsql.database.auto_failover.request_count integer
CPU database/cpu/utilization cloudsql.database.cpu.used percentage
Disk bytes database/disk/bytes_used
database/disk/quota
cloudsql.disk.bytes.used
cloudsql.disk.bytes.quota
bytes
Disk utilization database/disk/utilization cloudsql.disk.utilization.utilization percentage
Disk ops count database/disk/read_ops_count
database/disk/write_ops_count
cloudsql.disk.ops.read
cloudsql.disk.ops.write
integer
Memory database/memory/usage
database/memory/quota
cloudsql.memory.usage
cloudsql.memory.quota
bytes
Memory utilization database/memory/utilization cloudsql.memory_utilization.utilization percentage
Innodb buffer pool database/mysql/innodb_buffer_pool_pages_dirty
database/mysql/innodb_buffer_pool_pages_free
database/mysql/innodb_buffer_pool_pages_total
cloudsql.mysql.innodb_buffer_pool_pages.dirty
cloudsql.mysql.innodb_buffer_pool_pages.free
cloudsql.mysql.innodb_buffer_pool_pages.total
integer
Innodb fsyncs database/mysql/innodb_data_fsyncs
database/mysql/innodb_os_log_fsyncs
cloudsql.mysql.innodb_fsyncs.data
cloudsql.mysql.innodb_fsyncs.os_log
integer
Innodb pages database/mysql/innodb_pages_read
database/mysql/innodb_pages_written
cloudsql.mysql.innodb_pages.read
cloudsql.mysql.innodb_pages.write
integer
Queries database/mysql/queries
database/mysql/questions
cloudsql.mysql.queries.query
cloudsql.mysql.queries.question
integer
MySQL bytes received and sent database/mysql/received_bytes_count
database/mysql/sent_bytes_count
cloudsql.mysql.bytes.received
cloudsql.mysql.bytes.snet
bytes
Seconds behind master database/mysql/replication/seconds_behind_master cloudsql.mysql.replication.seconds_behind_master.seconds integer
Connections database/network/connections cloudsql.network.connections.count integer
Network bytes count database/network/received_bytes_count
database/network/sent_bytes_count
cloudsql.network.bytes.received
cloudsql.network.bytes.sent
bytes
CloudSQL replication lag database/replication/replica_lag cloudsql.replication.lag integer
Uptime database/uptime cloudsql.uptime.seconds integer

Cloud SQL for PostgreSQLの場合

最大で 15 + 3 × [データベース名] + 4 × [レプリカ名] 個のメトリックが取得されます。

グラフ名 指標タイプ Mackerel上のメトリック名 単位
Auto failover request count database/auto_failover_request_count cloudsql.database.auto_failover.request_count integer
CPU database/cpu/utilization cloudsql.database.cpu.used percentage
Disk bytes database/disk/bytes_used
database/disk/quota
cloudsql.disk.bytes.used
cloudsql.disk.bytes.quota
bytes
Disk utilization database/disk/utilization cloudsql.disk.utilization.utilization percentage
Disk ops count database/disk/read_ops_count
database/disk/write_ops_count
cloudsql.disk.ops.read
cloudsql.disk.ops.write
integer
Memory database/memory/usage
database/memory/quota
cloudsql.memory.usage
cloudsql.memory.quota
bytes
Memory utilization database/memory/utilization cloudsql.memory_utilization.utilization percentage
Connections database/network/connections cloudsql.network.connections.count integer
Network bytes count database/network/received_bytes_count
database/network/sent_bytes_count
cloudsql.network.bytes.received
cloudsql.network.bytes.sent
bytes
PostgreSQL backends database/postgresql/num_backends cloudsql.postgresql.backends.[データベース名].count integer
PostgreSQL replica byte lag database/postgresql/replication/replica_byte_lag cloudsql.postgresql.replica_byte_lag.[レプリカ名].[遅延の種類].bytes bytes
PostgreSQL transaction database/postgresql/transaction_count cloudsql.postgresql.transaction.[データベース名].[トランザクションタイプ].count integer
CloudSQL replication lag database/replication/replica_lag cloudsql.replication.lag integer
Uptime database/uptime cloudsql.uptime.seconds integer
  • "Mackerel上のメトリック名"の[データベース名]にはPostgreSQLデータベースの名前が入ります。
  • "Mackerel上のメトリック名"の[遅延の種類]にはreplay_location, flush_location, write_location, sent_locationが入ります。
  • "Mackerel上のメトリック名"の[レプリカ名]にはレプリカの名前が入ります。
  • "Mackerel上のメトリック名"の[トランザクションタイプ]にはcommitまたはrollbackが入ります。