gcloud logging read命令不返回任何内容

时间:2018-08-17 14:42:55

标签: logging google-cloud-platform google-bigquery gcloud google-cloud-stackdriver

我正在尝试为某个项目提取BigQuery的所有旧日志,因此可以将它们添加到通过接收器设置的日志数据集中。我都尝试过: gcloud日志读取为“ resource.type = bigquery_resource AND \  logName = projects / ql2infare / logs / cloudaudit.googleapis.com%2Fdata_access“

和 gcloud日志记录读取为“ resource.type = bigquery_resource AND logName = projects / ql2infare / logs / cloudaudit.googleapis.com%2Fdata_access”

似乎都在处理,但是即使我有该项目最后一天的日志,也没有得到任何回报。工作1天后,我将需要在最后一个Q上运行此命令,我似乎找不到有关gcp文档的任何信息。

3 个答案:

答案 0 :(得分:2)

检索超过1天的日志时需要指定新鲜度标志。

gcloud日志读取为[LOG_FILTER] [--freshness = FRESHNESS; default =“ 1d”]

查看详细信息here

答案 1 :(得分:0)

您必须使用gcloud auth登录名,以有权访问要为其获取日志的基础资源的用户身份登录,然后运行命令。

答案 2 :(得分:0)

Guoest的新鲜度很好,但是还有另一个问题可以解决:如果您的gcloud默认项目未设置为您要访问其日志的项目,则需要添加--project旗。在您的示例中,这看起来像:

gcloud logging read "resource.type=bigquery_resource AND \
  logName=projects/ql2infare/logs/cloudaudit.googleapis.com%2Fdata_access" \
  --project=ql2infare

否则,它将尝试在设置为默认项目的任何项目中查找日志,如果它是另一个项目,则不会为ql2infare生成任何日志。另外,您可以执行gcloud config set project ql2infare来更改默认值,然后再运行日志查询。有关更多信息,请参阅gcloud logging readgcloud config set的文档。