配置Cloud SQL Postgres的查询日志

时间:2018-04-24 04:53:42

标签: google-cloud-sql

我需要记录针对我的数据库执行的每个查询的时间戳,用户ID和SQL代码。在独立实例上,可以使用log_statement = true参数轻松完成此操作。但是在Cloud SQL中似乎不支持这种情况,并且Stackdriver日志记录似乎没有这么细微。

是否有其他机制可用于记录用户查询?

1 个答案:

答案 0 :(得分:0)

如果您使用该Cloud SQL实例作为Web应用程序的后端,则可以使用StackDriver日志记录库并在应用程序中发生Db访问的位置写入日志。

在maven中,你需要这种依赖:

<dependency>
  <groupId>com.google.cloud</groupId>
  <artifactId>google-cloud-logging</artifactId>
  <version>1.26.0</version>
</dependency> 

这是一个小用法示例:

import java.util.logging.Logger;

public class Quickstart {
  private static final Logger logger = Logger.getLogger(Quickstart.class.getName());

  public static void main(String[] args) {
    logger.info("Logging INFO with java.util.logging");
    logger.severe("Logging ERROR with java.util.logging");
  }
}

在此阅读the docs。希望它有所帮助