2017-04-07 20 views
0

在我的應用程序引擎開發服務器管理URL的crons頁http://localhost:8000/cron如何谷歌應用程序引擎的cron dev的服務器解決pytz警告

它呈現出約pytz爲其設置爲時區歐洲/倫敦cron項警示:

pytz is required to calculate future run times for cron jobs with timezones. 

我已經有pytz,它的安裝,我使用它在應用程序和crons,它是在生產服務器上的罰款。

我該如何擺脫此警告?我已經嘗試添加包括它在我的app.yaml庫:

libraries: 
- name: pytz 
    version: latest 

但沒有區別。將'庫'部分添加到cron.yaml會導致錯誤。它不影響任何事情,因爲cron不會在dev中自動運行,但我想避免這種警告。

我cron.yaml文件是:

cron: 
- description: timed cron job 
    url: /tasks/monday-at-9 
    schedule: every monday 09:00 
    timezone: Europe/London 

和錯誤/ dev的服務器上的警告是:

pytz is required to calculate future run times for cron jobs with timezones 

即使我有pytz。

回答

0

幾個星期後,現在好了。我的開發者管理員cron列表頁面上沒有紅色警告,它正確地告訴我他們將在正確的時區生產中運行的時間。

我cron.yaml文件看起來是這樣的:

cron: 
    - description: My task 
     url: /tasks/task-1 
     schedule: every day 09:01 
     timezone: Europe/London 

https://cloud.google.com/appengine/docs/standard/python/release-notes

0

您是否處於標準或靈活的環境?

對於標準的環境,下面是不是有幫助:

libraries: 
- name: pytz 
    version: latest 

因爲谷歌不提供pytz。也許它甚至是問題的原因...

我上傳pytz與我的應用程序,並確保它是在Python搜索路徑。例如,在項目的根目錄或在vendor.add中添加的文件夾中。我永遠不會看到你所看到的錯誤。

我假設你使用的是一個GAE特定版本pytz(像這樣的one),而不是通用版本,因爲你不能使用通用版本。

+0

謝謝。我在標準環境下,圖書館評論只是一個嘗試,因爲我需要它的MySQL等。我在我的代碼中使用pytz.gae,並且工作正常。看起來這個錯誤來自我的cron.yaml文件及其來自GAE的解析,而不是我應用中的最終任務代碼。在cron.yaml的cron條目中使用時區時,只能在開發控制檯上看到警告。 –

+0

pytz現在已包含在App Engine中([請參閱此處的庫列表](https://cloud.google.com/appengine/docs/standard/python/tools/built-in-libraries-27)),但它不會截至撰寫本文時,不能與dev_appserver一起工作。 :(有[用dev_appserver解決問題]的開放票(https://issuetracker.google.com/issues/35876507#comment31)。 –

+0

@LukeFrancl,很高興知道! –

相關問題