個人覺得 GCP 後端管理頁面很難操作,顯示方法也不直覺,所以決定把 Cloud Logging 上的資料全部拉回 local 來分析。
首先在 Cloud Logging 上面建立 filter 來篩選出需要的資料,以下範例是篩出 Cloud SQL 的 logs:
接下來透過 gcloud console 來組出命令,主要以 gcloud logging read
開始,在加入上圖的 filter ,最後選擇 log format :
gcloud logging read \ 'resource.type=cloudsql_database AND \ resource.labels.database_id="my-database" AND \ logName=("projects/my-project/logs/cloudsql.googleapis.com%2Fmysql.err" OR \ "projects/my-project/logs/cloudsql.googleapis.com%2Fmysql-general.log" OR \ "projects/my-project/logs/cloudsql.googleapis.com%2Fmysql-slow.log") AND \ timestamp>="2022-04-26T07:00:00Z" AND timestamp<="2022-04-26T20:00:00Z" ' \ --project=my-project \ --format=json > local-logs.json