结构化日志记录

本文档介绍了结构化日志记录的概念以及向日志条目载荷字段添加结构的方法。 如果日志载荷的格式设置为 JSON 对象,并且该对象存储在 jsonPayload 字段中,则日志条目称为“结构化日志”。对于这些日志,您可以构造查询来搜索特定 JSON 路径,并且可以为日志载荷中的特定字段编制索引。相反,如果日志载荷的格式设置为字符串并存储在 textPayload 字段中,则日志条目为“非结构化”。您可以搜索文本字段,但无法为其内容编制索引。

如需创建结构化日志条目,请执行以下任一操作:

  • 调用 entries.write API 方法并提供格式完整的 LogEntry
  • 使用 gcloud logging write 命令。
  • 使用可写入结构化日志的 Cloud Logging 客户端库。

如需详细了解这些方法,请参阅以下部分。

使用客户端库或 API 写入日志

您可以使用调用 Cloud Logging API 的 Cloud Logging 客户端库,或者直接调用 Cloud Logging API 来写入日志数据。客户端库可以自动捕获一些信息并提供接口来适当填充字段,从而简化特殊 JSON 字段的填充过程。不过,如需完全控制载荷的结构,请直接调用 Cloud Logging API 并将完整的 LogEntry 结构传递给 Cloud Logging API。

如需了解详情,请参阅 entries.write 参考文档。

如需查看代码示例,请参阅写入结构化日志

使用 gcloud CLI 写入日志

您可以使用 gcloud CLI 写入日志数据。该接口支持非结构化日志和结构化日志。如果您想写入结构化日志,请为命令提供序列化 JSON 对象。

如需快速入门,请参阅使用 Google Cloud CLI 写入和查询日志条目

如需查看代码示例,请参阅 gcloud logging write 参考文档。

后续步骤