當我爲與Google電子表格關聯的Google應用程序腳本創建每日基於時間的觸發器時,系統會提示我選擇一小時長窗口內的執行時間,似乎cron包裝程序在該小時長的時間間隔內隨機分配一個確切的執行時間。更改Google電子表格應用程序腳本觸發器的排隊時間
由於我的應用程序的特定用例有幾個數據依賴關係,這些數據依賴關係可能無法在小時前完成,所以我不得不將它分成幾個階段,每個階段都有一個單獨的觸發器,以確保所需的數據將可用。
例如,最初爲我的腳本分配的觸發時間爲上午6:03,但通常在上午5:57到達的數據有時直到上午6:10纔到達,並且腳本沒有任何可處理的內容天。作爲一個鈍器解決方案,我刪除了6-7AM觸發器,並重新創建它以在7-8AM時隙執行,以確保所需的數據可用。這要求腳本的第二階段必須移至8-9AM,導致腳本結果可能會延遲2-3小時。
爲了改善這種情況,我正在考慮整合兩個腳本處理階段並創建一個更準確的腳本執行觸發時間,比如6:30 AM是安全的。有誰知道:
- 是否有可能,除了通過觀察每天的處理,發現已分配的確切觸發執行時間,並
- 如果隨機分配的,可腳本觸發器被創建和刪除,直到一個可接受的精確執行時間被獲得?
在此先感謝您提供的任何指導。
我相信距離最近的是[(+/- 15分鐘)](https://developers.google.com/apps-script/reference/script/clock-trigger-builder)。我會在6點30分和7點設置兩個觸發器,或者像你提到的那樣將它們結合起來。如果您真的需要在15分鐘窗口之前運行流程,可以在早上6點觸發一個[分鐘觸發器](https://developers.google.com/apps-script/reference/script/clock-trigger -builder#everyMinutes(Integer))來檢查數據是否到達,如果它確實運行了你的進程,那麼就有分鐘觸發器自我刪除。 –