本教學課程說明如何透過 Cloud Scheduler 中的 HTTP 端點,排定 HTTP Cloud Run 函式的執行時間。如果函式需要網址端點並回應 HTTP 要求 (例如 Webhook),請使用 HTTP 函式。
或者,如果您建立了 CloudEvents 函式,請使用 Eventarc 事件觸發條件,排定函式回應專案內事件的時間。Eventarc 可觸發 Pub/Sub 主題的訊息、Cloud Storage 值區的變更等。詳情請參閱Cloud Run functions 類型。
排定 Cloud Run 函式的執行作業是 Cloud Scheduler 的常見用途。在這個教學課程中,您將執行下列操作:
建立 HTTP Cloud Run 函式
建立由 Cloud Scheduler 觸發的 HTTP 函式。
前往 Google Cloud 控制台的「Cloud Run」頁面。
按一下「編寫函式」。
在「設定」部分,完成下列步驟:
接受其他預設值,然後按一下「建立」。
複製函式的 HTTP 網址。
如要進一步瞭解如何使用 Terraform 部署 Cloud Run 函式,請參閱「部署 Cloud Run 函式」。
建立 Cloud Scheduler 工作
建立 Cloud Scheduler 工作,透過 HTTP 觸發動作。
前往 Google Cloud 控制台的「Cloud Scheduler」頁面。
按一下「建立工作」 。
輸入工作名稱。
在「Region」(區域) 清單中選取區域。
使用 unix-cron 格式指定工作的頻率:
30 16 * * 7詳情請參閱「Cron 工作格式和時區」。
在「時區」清單中選取時區。
按一下「繼續」。
在「Target type」(目標類型) 清單中,選取「HTTP」。
在「URL」欄位中,輸入您先前複製的函式 HTTP 網址。
在「Auth header」(授權標頭) 清單中,選取「Add OIDC token」(新增 OIDC 權杖)。
在「Service account」(服務帳戶) 清單中,選取您先前建立的服務帳戶。
在「對象」欄位中,輸入您先前複製的函式 HTTP 網址。
點選「建立」。
您已建立 Cron 工作,會在星期日 16:30 執行 Cloud Run 函式。
執行 Cloud Scheduler 工作
現在可以執行您建立的工作。
前往 Google Cloud 控制台的 Cloud Scheduler 頁面。
選取您建立的工作核取方塊,然後按一下「強制執行」。
首次叫用時,專案中建立的第一項工作可能需要幾分鐘的時間才能設定及執行。
工作執行後,「上次執行狀態」應會顯示
Success。
在 Cloud Run 函式中驗證結果
您可以確認 Cron 工作是否成功觸發及執行 Cloud Run 函式。
前往 Google Cloud 控制台的「Cloud Run」頁面。
依序選取「篩選服務」>「部署類型」>「函式」。這項操作會篩選服務清單,只顯示函式。
按一下函式名稱。
「服務詳細資料」頁面隨即開啟,並顯示服務指標。
按一下 [Logs] (記錄) 分頁標籤。
您應該會看到類似以下的記錄項目:
POST 200 146 B 5 ms Google-Cloud-Scheduler https://FUNCTION_NAME