我正在尝试here给出的示例。它使用谷歌应用引擎,云引擎 以及在GCE上执行cron任务的pub / sub服务。这很简单 理解并执行。但是我尝试替换logger_sample_task.py 代码与我自己的代码(下面给出)。它只是将字符串记录到日志文件中。 注意:该脚本在Google计算引擎上运行
import logging
logging.basicConfig(filename='testlog.log', level=logging.INFO)
logging.info('Hope this works')
但是在设置完成后我检查cron任务是否运行时,cron服务有 状态失败。
我完全按照给出的所有步骤(包括和不包括) 我的托管脚本)但它仍然说cron作业失败了。任何理由或方法找出答案 这种失败的原因是什么?
App引擎在其日志中出现此错误:
https://pubsub.googleapis.com/v1beta2/projects/dummy-project-1082/topics/test:publish?alt=json 返回"发布请求中的一条或多条消息为空。每 message必须包含非空数据或至少一个 属性">
更新:按照this post
中的建议排除应用引擎错误答案 0 :(得分:1)
修正了它。
问题在于script。特别是在声明函数的行中的publish_to_topic
函数中:
def publish_to_topic(topic, msg='', create=True):
这会导致应用程序将空消息发布到gce应用程序正在侦听的pub / sub主题(我在上面发布的错误消息中抱怨了哪个app引擎)
只需将msg=''
更改为msg='test'
即可。而cron的工作是成功的。