微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从GCP Cloud SQL日志创建报告

如何解决从GCP Cloud SQL日志创建报告

我已启用登录GCP Postgresql 11 Cloud sql数据库功能。日志将被重定向到同一项目中的存储桶,并且采用JSON格式。

日志包含在数据库上执行的查询。有没有一种方法可以根据这些JSON日志以及日志条目中的几个字段来创建体面的报告?当前,日志文件使用JSON格式,对读者的友好程度不是很高。

此外,如果运行多行查询,则会为该查询创建许多日志条目。如果还有一种方法可以识别属于同一查询的日志,那也将很有帮助!

解决方法

我想最简单的方法是使用BigQuery。

BigQuery将正确导入这些jsonl文件和will assign proper field names for the json data

当您有多行查询时,您会看到它们在json文件中显示为多个日志条目。

看起来多行查询中的所有条目都具有相同的receiveTimestamp(这是有道理的,因为它们是同时生成的)。

此外,insertId字段具有一个“ s = xxxx”子字段,该子字段对于同一条语句中的行不会更改。例如:

insertId: "s=6657e04f732a4f45a107bc2b56ae428c;i=1d4598;b=c09b782e120c4f1f983cec0993fdb866;m=c4ae690400;t=5b1b334351733;x=ccf0744974395562-0@a1"

以正确的顺序提取该语句的策略是:

  1. 按insertId中的“ s”字段排序
  2. 然后按receiveTimestamp升序排序(以将所有行立即发送到cloudsql服务中的syslog代理)
  3. 最后按时间戳升序排序(以使行顺序正确)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。