python-3.x - Python CRON 谷歌灵活应用引擎不工作
问题描述
我有以下内容cron.yaml
:
cron:
- description: "TEST_TEST_TEST"
- url: /cronBatchClean
- schedule: every 2 minutes
然后在app.yaml
:
service: environ-flexible
runtime: python
env: flex
entrypoint: gunicorn -b :$PORT main:app
runtime_config:
python_version: 3
以此为main.py
:
from flask import Flask, request
import sys
app = Flask(__name__)
@app.route('/cronBatchClean')
def cronBatchClean():
print("CRON_CHECK", file=sys.stderr)
return "CRON_CHECK"
当我输入完整的 URL 时,我在屏幕上收到“CRON_CHECK”,但这似乎没有执行。同样在 App Engine 仪表板中,当我单击 CRON 作业时,没有列出任何作业。
任何帮助执行此操作将不胜感激,
谢谢 :)
编辑 1
我现在执行 cron 任务,但收到404
错误消息。当我输入完整的 URL(即 https://.appspot.com/cronBatchClean)时,相应的代码就会执行。
我添加了一个GET
处理程序,但我仍然没有收到任何运气。
@app.route('/cronBatchClean', methods=['GET'])
def cronBatchClean():
print("CRON_JOB_PRINT", file=sys.stderr)
return "CRON_CHECK"
解决方案
其中cron.yaml
有不必要的“-”字符,它们正在启动新列表。YAML 语法
Cron Jobs 的正确格式cron.yaml
,请参阅 Google Cloud 文档:
cron:
- description: "TEST_TEST_TEST"
url: /cronBatchClean
schedule: every 2 minutes
要部署 Cron 作业,请使用gcloud 命令:
$ gcloud app deploy cron.yaml
推荐阅读
- python - Flask-Celery-Redis:Memcached 内存释放?
- wordpress - 如何避免在管理面板中加载功能?
- java - 移动自动化与 appium -- Selenium 驱动程序
- python - 使用 pip 下载模块时收到警告
- java - Java循环,对如何添加总循环感到困惑
- mysql - 从日期范围选择 mysql/phpmyadmin 问题
- node.js - 将 Sequelize 运算符与来自 JSON 正文的值一起使用
- python - 提取月份和年份,然后使用 Django ORM 计数并通过分组获取平均值
- c# - WebClient DownloadStringAsync 方法返回 null
- encryption - 以字节为单位转换密钥以与 openssl 一起使用 - 'bad magic number'