草庐IT

celery_log_dir

全部标签

python - celery 任务消失

我有一个使用cron脚本运行的django项目,执行管理命令。此命令为celery创建for循环任务:forrinpr:log_task(tasks_logger.info,"to_queue",r)remind.delay(r,now,send_all)任务看起来像这样:classRTask(Task):abstract=Truedefon_failure(self,exc,task_id,args,kwargs,einfo):r=args[0]log_task(logger.error,exc,r)log_task(logger_tb.error,einfo,r)@task(bas

python - 使用 Amazon EC2 自动缩放 Python Celery

我有一个CeleryTask-Manager来处理公司分析的一些数字。任务管理器和工作人员托管在AmazonEC2Linux服务器上。我需要设置系统,如果我们向celery发送太多任务,Amazon会自动设置一个新的EC2实例来运行更多工作人员并平衡这些工作人员之间的负载。我知道存在的服务是AmazonAutoscale和AmazonLoadbalancing服务,它们看起来正是我想要使用的,但是,我不确定配置Celery的最佳方式是什么。我认为我应该有一个负责收集所有任务的celery“master”和一些执行这些任务的celeryworker。随着任务数量的增加,我想增加更多的wo

python - pwd.getpwnam(username).pw_dir 在 Windows 中的等价物是什么?

Pythonpwd模块提供对getpwnam(3)POSIXAPI的访问,可用于通过用户名获取特定用户的主目录,以及确定用户名是否有效.如果使用不存在的用户名调用pwd.getpwnam将引发异常。起初似乎可以通过os.path.expanduser('~username')以跨平台的方式实现相同的结果。但是,对于WindowsXP上的Python2.6,这似乎实际上不会为不存在的用户名产生故障。此外,在WindowsXP上的Python2.5上,即使对于有效用户,它似乎也会失败。能否在Windows上可靠地获取此信息?怎么办? 最佳答案

python - celery :如何限制队列中的任务数量并在满时停止喂食?

我对Celery很陌生,这是我的问题:假设我有一个脚本,它应该不断地从数据库中获取新数据并将其发送给使用Celery的工作人员。任务.py#CeleryTaskfromceleryimportCeleryapp=Celery('tasks',broker='amqp://guest@localhost//')@app.taskdefprocess_data(x):#Dosomethingwithxpass获取数据库.py#FetchnewdatafromDBanddispatchtoworkers.fromtasksimportprocess_datawhileTrue:#RunDBq

python - celery.utils.log.ProcessAwareLoggerobject 在 logging.Logger.manager.loggerDict 中做什么

我正在通过以下方式检查logging.Logger.manager.loggerDict:importlogginglogging.Logger.manager.loggerDict字典如下:{'nose.case':,'apps.friends':,'oauthlib.oauth2.rfc6749.grant_types.client_credentials':,'apps.adapter.views':,'apps.accounts.views':,}TherearemorebutItruncatedit我的问题是:celery为何会涉及其他各种非celery应用程序的日志记录?是

python - Celery:查询未决任务的标准方法?

是否有任何标准/独立于后端的方法来根据某些字段查询待处理任务?例如,我有一个任务需要在“最后一次用户交互”之后运行一次,我想将其实现为:defuser_changed_content():task=find_task(name="handle_content_change")iftaskisNone:task=queue_task("handle_content_change")task.set_eta(datetime.now()+timedelta(minutes=5))task.save()还是直接挂接到存储后端更简单? 最佳答案

python - 权限被拒绝 : 'geckodriver.log' while running selenium webdriver in python

我已经在centos上安装了Firefox和Selenium。我正在使用Xvfb和pyvirtualdisplay打开浏览器。当我尝试运行seleniumwebdriver时,我能够打开一个新的显示,但只要我这样做浏览器=webdriver.Firefox()我得到错误:File"",line1,inFile"/usr/lib/python2.7/site-packages/selenium/webdriver/firefox/webdriver.py",line134,in__init__self.service=Service(executable_path,log_path=lo

python - 通知 worker 关闭的 celery 任务

我将celery2.4.1与python2.6、rabbitmq后端和django一起使用。如果工作人员关闭,我希望我的任务能够正确清理。据我所知,您无法提供任务析构函数,因此我尝试连接到worker_shutdown信号。备注:AbortableTask仅适用于数据库后端,所以我不能使用它。fromcelery.signalsimportworker_shutdown@taskdefmytask(*args)obj=DoStuff()defshutdown_hook(*args):print"Workershuttingdown"#cleanupnicelyobj.stop()wor

python - Heroku 上的 Django Celery 任务导致内存使用率过高

我在Heroku上有一个celery任务,它连接到外部API并检索一些数据,存储在数据库中并重复数百次。很快(大约10次循环后)Heroku开始警告内存使用率过高。有什么想法吗?tasks.py@app.taskdefretrieve_details():forpinPObj.objects.filter(some_condition=True):p.fetch()模型.pydeffetch(self):v_data=self.service.getV(**dict(Number=self.v.number))response=self.map_response(v_data)fork

python - Sentry 、乌鸦和 Django celery

现在django-sentry已经成为一个独立的服务器(而且非常棒)我正在尝试移植我的应用程序以使用它。我已经设置了一个配置了django应用程序的独立服务器tologusingdjango1.3'sloggingdictionaryconfaspertheravendocs.我似乎无法让任何celery任务登录到Sentry服务器(尽管它们确实被打印到控制台)。我不确定我应该做什么?我在我的`INSTALLED_APPS'中包含了raven.contrib.django.celery。未捕获的异常被发送到Sentry,自定义日志消息也是通过:importlogginglogger=l