Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 手动日志服务刷新是否应在启用自动刷新的情况下工作?_Python_Google App Engine_Exception_Logging_Cron - Fatal编程技术网

Python 手动日志服务刷新是否应在启用自动刷新的情况下工作?

Python 手动日志服务刷新是否应在启用自动刷新的情况下工作?,python,google-app-engine,exception,logging,cron,Python,Google App Engine,Exception,Logging,Cron,我有一个发送电子邮件的cron任务。为了在GAE配额内,在发送每封电子邮件后,它会休眠8秒。休眠8。结果,作业运行超过60秒,我得到CanceledError:API调用logservice.Flush被显式取消异常 我已经找到了解决方案,并开始调用logservice。在每次发送消息后手动刷新,但没有任何帮助。所以,我试图理解原因。我是否应该将AUTOFLUSH_ENABLED更改为False以使用?为什么不使用cron启动发送电子邮件的任务,那么您有10分钟而不是60秒的时间来运行作业。大多

我有一个发送电子邮件的cron任务。为了在GAE配额内,在发送每封电子邮件后,它会休眠8秒。休眠8。结果,作业运行超过60秒,我得到CanceledError:API调用logservice.Flush被显式取消异常


我已经找到了解决方案,并开始调用logservice。在每次发送消息后手动刷新,但没有任何帮助。所以,我试图理解原因。我是否应该将AUTOFLUSH_ENABLED更改为False以使用?

为什么不使用cron启动发送电子邮件的任务,那么您有10分钟而不是60秒的时间来运行作业。

大多数情况下,可以使用任务队列和管理队列速率来代替睡眠以达到配额,如中所述。

这正是我所做的。但还是会被取消错误。请看一看我所指的问题-第一个人也在谈论cron作业任务,也有同样的问题。David,请在另一个答案中查看我的评论-我已经使用了任务队列并解决了这个问题。嘿,LA_,我的观点是,你可以用任务队列删除sleep指令,然后看看它是否能消除你的错误。如果您尝试这样做,请更新问题以反映电子邮件是在任务队列中发送的,并删除对睡眠的引用。对不起,我说我在这里使用任务队列是错误的。但这是cron作业,所以它有相同的10分钟限制。如果我删除睡眠,则会发生API超配额异常,当然,我不会出现CanceledError。API超配额错误的发生是因为您同时发送了太多邮件。创建一个任务队列,根据配额设置正确的速率,并为每个要发送的电子邮件创建一个任务。