【问题标题】:Google Cloud Build show no logsGoogle Cloud Build 不显示任何日志
【发布时间】:2022-09-06 22:28:25
【问题描述】:

我有一个谷歌云触发器,它在 Github 推送上触发云构建。

问题是 Cloud Build 没有显示任何日志。我关注了this doc,但在 Cloud Build 日志和 Logs Explorer 上都找不到任何日志(见下图)

这是我的cloudbuild.yaml

steps:
# install dependencies
- name: node:16
  entrypoint: yarn
  args: []
# create .env file
- name: \'ubuntu\'
  args: [\'bash\', \'./makeEnv.sh\']
  env: 
    - \'GCP_SHOPIFY_STOREFRONT_ACCESS_TOKEN=$_GCP_SHOPIFY_STOREFRONT_ACCESS_TOKEN\'
    - \'GCP_SHOPIFY_DOMAIN=$_GCP_SHOPIFY_DOMAIN\'
# build code
- name: node:16
  entrypoint: yarn
  args: [\"build\"]
# deploy to gcp
- name: \'gcr.io/google.com/cloudsdktool/cloud-sdk\'
  entrypoint: \'bash\'
  args: [\'-c\', \'gcloud config set app/cloud_build_timeout 1600 && gcloud app deploy --promote\']
timeout: \"1600s\"
options:
  logging: CLOUD_LOGGING_ONLY

构建失败,但它实际上创建了一个成功将版本部署到 App Engine 的子序列 App Engine 构建。但该版本不会自动升级(见下图)

  • 您的日志存储在哪里?
  • @Tushar 老实说,我不知道我的日志存储在哪里。正如您在我的cloudbuild.yaml 文件中看到的,我有logging: CLOUD_LOGGING_ONLY 选项。我添加它是因为它是使构建工作的唯一选项。正如文档指出的那样,我认为日志应该存储在 Logs Explorer 中,但事实并非如此。
  • 你可以看看这个link
  • @SathiAiswarya 我看到了那个答案,但我是所有者。所以我想我可以完全访问所有内容。这样对吗?
  • @SathiAiswarya 我在这里提到你是为了通知你我找到了答案。这对我来说真的很有用。我认为它对您也可能有用,所以我这样做是为了以另一种方式表示感谢:)

标签: google-cloud-platform google-cloud-build google-cloud-logging


【解决方案1】:

我没有所有的细节,所以试图帮助解决上面提到的所有信息。

正如我所见,您正在使用 CLOUD_LOGGING_ONLY 并且无法在日志资源管理器中看到日志,并且考虑到您拥有访问日志的所有权限。

我建议您查看用于云构建的服务帐户必须至少具有以下角色: role/logging.logWriter 或权限:logging.logEntries.create 权限,如果是不是默认云构建 SA project-number@cloudbuild.gserviceaccount.com。

希望这可以帮助 :)

【讨论】:

  • 你是英雄,伙计:D。非常感谢。我们都专注于输出权限,忘记了我们没有输入:)。你带来了另一个视角。这不仅是这个问题的答案,也是我的教训,我们应该始终关注问题的两个方面,不要只关注我们所看到的
猜你喜欢
  • 2019-10-15
  • 2018-06-06
  • 2021-06-15
  • 2020-09-12
  • 2020-02-26
  • 2019-12-29
  • 2022-06-13
  • 2021-07-14
  • 2021-11-20
相关资源
最近更新 更多