问题标签 [google-cloud-scheduler]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
740 浏览

google-cloud-platform - GCP Cloud Build - 部署调度程序作业

我们的 cloudbuild.yaml 文件中有以下内容,它正在按预期创建我们的云调度程序作业。

但是,一旦再次触发云构建,我们就会收到以下错误:

我们希望将其保留在我们的 cloudbuild 中,而不是在控制台中手动创建。如果可能,我们将如何重组构建步骤和/或在 python37 中添加一个云函数来检查作业是否存在,如果不创建。如果作业存在且没有更改,请继续。如果存在更改,则更新。

提供的任何反馈、建议或示例将不胜感激!

谢谢

0 投票
2 回答
1276 浏览

google-cloud-functions - 当 ingressSettings = ALLOW_INTERNAL_ONLY 时如何从 Google Cloud Scheduler 调用 Google Cloud Function?

在同一个项目中,我有一个 HTTP 云函数和一个云调度程序,它们向这个函数发送一个 POST 请求。我只想允许来自项目内部的请求调用函数。但是,当我将 Ingress Settings 设置为“仅允许内部流量”时,Cloud Scheduler 会得到“PERMISSION_DENIED”

这是错误日志(已编辑)

链接到 ingressSettings 的 UI 选项

0 投票
1 回答
812 浏览

python - 为什么 Cloud Function 采用不同的时区/时间?

背景:通过 Cloud Scheduler 触发 CF:下图:它计划在澳大利亚/悉尼时间早上 7 点运行并触发两个云功能:

在此处输入图像描述

云功能:区域是 us-central1。使用的代码:

奇怪的云功能行为: 1. 虽然云调度程序在早上 7:00 触发作业,并且我在代码中将服务器时间设置为本地时间,但执行时间仍然不同。它需要美国时间(1 天滞后)(下图)

在此处输入图像描述

  1. 第二个云函数显示不同的启动时间(与第一个相差 4 分钟),但由同一个调度程序同时触发。

在此处输入图像描述

  1. 当使用“立即运行”选项通过 Cloud Scheduler 手动触发时,它们会按预期运行并显示正确的时间安排。(图3)

在此处输入图像描述

有人遇到过这种奇怪的行为吗?以及如何解决它的任何想法?

0 投票
1 回答
74 浏览

google-cloud-platform - 为不同的时间间隔(小时和天)配置 cron 计划

您好,我正在按照谷歌云指南在 GCP 中配置作业:https ://cloud.google.com/scheduler/docs/configuring/cron-job-schedules?&_ga=2.226390674.-907001748.1582817924#defining_the_job_schedule

我必须配置一个作业,该作业将在工作日早上 6 点执行一次,在周末早上 5 点执行一次。我不太确定是否可以使用和语句之类的东西在几个时间间隔内配置它:

除了我需要添加其他间隔之外,我可以通过什么方式组合这些间隔,但我不太确定我该怎么做。

谢谢。

0 投票
2 回答
1704 浏览

python-3.x - Google-Cloud-Scheduler 因 http 触发 Cloud Function 而失败

有一个 Http 触发 Cloud 函数可以成功执行。

功能代码:

在此处输入图像描述

使用堆栈驱动程序记录:

现在,我创建了一个云调度程序来每天凌晨 04:00 触发这个云功能。

使用堆栈驱动程序的调度程序日志记录:

0 投票
2 回答
2014 浏览

python - 如何使用 Google Cloud 调度程序 Python api 创建作业

我想创建一个每天上午 10 点运行的 cron 作业以触发云功能。但是,我遇到了 Python api 的问题。当我创建工作时,它会弹出此错误。

TypeError:MergeFrom() 的参数必须是同一类的实例:预期的 google.cloud.scheduler.v1.HttpTarget 得到了 str。

这是我的代码:

0 投票
0 回答
92 浏览

firebase - 如何查看 Firebase Cloud Functions 制作的 Cron Job 的日志?

我有一个简单的片段来使用 Firebase Cloud Functions 创建 cron 作业:

但是,当我从 Firebase Console > Cloud Functions > Cron 检查日志时,我看不到任何消息console.log(),我console.log()在其他 Firebase Cloud 功能下使用时通常会看到这些消息。

我试图导航到Google Cloud Scheduler Console,但我也没有看到任何日志,除了如下所示的日志:

看起来 cron 永远不会运行。有没有办法检查它是否真的在运行?如上所述,我在哪里可以找到 cron 函数中的 console.log() 的日志?

0 投票
2 回答
810 浏览

python - 无法执行云函数触发不允许未经身份验证的调用的 HTTP 触发的云函数?

我有一种情况,我正在尝试创建两个云功能,即 CF1 和 CF2,并且我有一个云调度程序。两个云功能都启用了经过身份验证的调用。我的流程是 Cloud Scheduler 将触发 CF1。CF1 完成后,CF1 将触发 CF2 作为 http 调用。我已经提到无法从 GCP 调度程序调用 Google Cloud Function以从 Cloud Scheduler 访问经过身份验证的 CF1 并能够访问 CF1。但是从 CF1 访问 CF2 时出现问题。CF1 不会触发 CF2,也不会给出任何错误消息。从另一个经过身份验证的 Cloud Function 访问经过身份验证的 Cloud Function 时,我们是否需要遵循任何其他技术。

CF1 代码:

CF2 代码:

当前输出日志:

预期的输出日志:

注意:如果我对这两个云功能使用未经身份验证的访问,则相同的流程正在工作。

0 投票
1 回答
467 浏览

google-cloud-platform - Cloud Run 和 Cloud Scheduler - 在完整数据集上获取失败结果

我每天使用 Cloud Scheduler 在 Cloud Run 中运行 python 脚本,以从 BigQuery 中提取数据并将其作为 CSV 文件上传到 Google Cloud Storage。Cloud Scheduler 设置使用带有 GET“HTTP 方法”的 HTTP“目标”。此外,Cloud Scheduler使用带有“添加 OIDC 令牌”选项的服务帐户 对https端点进行身份验证。

在为需要几秒钟的作业运行 Cloud Scheduler 和 Cloud Run 时,使用非常小的 BigQuery 数据子集运行时,Cloud Scheduler 中的“结果”始终显示“成功”并且作业按预期完成。但是,当使用完整的 BigQuery 数据集运行 Cloud Scheduler 和 Cloud Run 以执行需要几分钟的作业时,Cloud Scheduler 中的“结果”始终显示“失败”,即使 CSV 文件通常(尽管并非总是)上传到谷歌云存储按预期。

(1) 在完整的 BigQuery 数据集上运行 Cloud Scheduler 和 Cloud Run 时,为什么 Cloud Scheduler 中的“结果”总是显示“失败”,即使作业通常按预期完成?

(2) 如何修复 Cloud Scheduler 和 Cloud Run 以确保作业始终按预期完成,并且 Cloud Scheduler 中的“结果”始终显示“成功”?

0 投票
0 回答
264 浏览

python - 由 Cloud Scheduler 触发的 Cloud Run Python 脚本

我一直在尝试将 Docker Build 组合到 Cloud Run。在测试中,我运行以下 DockerFile 并使用 bash 脚本和Docker run --rm -d命令在 Cron 中安排它

Dockerfile

风险清单.py

我将 run_task() 作为创建各种文件和文件夹的脚本运行,并且我在 app.route 之上具有功能。

这是正确的,因为它似乎不起作用?