草庐IT

celery-log

全部标签

python - celery 链不适用于批处理

乍一看,我非常喜欢Celery中的“批处理”功能,因为我需要在调用API之前对一定数量的ID进行分组(否则我可能会被踢出局)。不幸的是,在进行一些测试时,批处理任务似乎不能很好地与其余的Canvas基元(在本例中为链)配合使用。例如:@a.task(base=Batches,flush_every=10,flush_interval=5)defget_price(requests):forrequestinrequests:a.backend.mark_as_done(request.id,42,request=request)print"filter_by_price"+str([r

python - 使用 Celery 作为 Twisted 应用程序的控制 channel

我正在尝试使用Celery作为Twisted应用程序的控制channel。我的Twisted应用程序是一个抽象层,它为各种本地运行的进程(通过ProcessProtocol)提供标准接口(interface)。我想使用Celery来远程控制它——AMQP似乎是从中央位置控制许多Twisted应用程序的理想方法,我想利用Celery基于任务的功能,例如任务重试、子任务等这并没有像我计划的那样工作,我希望有人能帮助我指明正确的方向以实现这一目标。我在运行脚本时试图实现的行为是:开始一个稍微修改过的celeryd(见下)等待Celery任务收到“启动流程”任务时,生成ProcessProto

分布式事务Seata源码解析十:AT模式回滚日志undo log详细构建过程

文章目录一、前言二、准备undolog0、undolog样例1)undolog表结构2)rollback_info(回滚日志数据)1、beforeimage的构建1)业务表元数据信息TableMeta1>Caffeine缓存数据获取2>Caffeine缓存自动刷新2)beforeimage查询SQL3)构建before表记录TableRecords2、afterimage的构建3、beforeimage和afterimage封装到SqlUndoLog三、持久化undo

python - 本地主机上的 Django/Celery 多个队列 - 路由不起作用

我关注了celerydocs在我的开发机器上定义2个队列。我的celery设置:CELERY_ALWAYS_EAGER=TrueCELERY_TASK_RESULT_EXPIRES=60#1minsCELERYD_CONCURRENCY=2CELERYD_MAX_TASKS_PER_CHILD=4CELERYD_PREFETCH_MULTIPLIER=1CELERY_CREATE_MISSING_QUEUES=TrueCELERY_QUEUES=(Queue('default',Exchange('default'),routing_key='default'),Queue('feed

python - logging.error() 调用了多少次?

也许它只是不存在,因为我找不到它。但是使用python的logging包,有没有办法查询Logger以找出特定函数被调用了多少次?例如,报告了多少错误/警告? 最佳答案 日志模块似乎不支持这个。从长远来看,您最好创建一个新模块,并通过对现有日志记录模块中的项目进行子类化来添加此功能,以添加您需要的功能,但您也可以使用装饰器轻松实现此行为:classCallCounted:"""Decoratortodeterminenumberofcallsforamethod"""def__init__(self,method):self.met

python - 当我使用 Python 的 logging.handlers.SysLogHandler 时,Syslog 消息显示为 "Unknown"

当我在我的mac上运行它时:importlogging.handlerslogger=logging.getLogger(__name__)logger.setLevel(logging.DEBUG)syslog_address='/var/run/syslog'logger.addHandler(logging.handlers.SysLogHandler(syslog_address))logger.error("Whatthecrap?")它在系统日志中显示如下:Oct1819:02:06nickUnknown[4294967295]:Whatthecrap?为什么它是未知的?以

python - 具有多个装饰器的 celery 任务不会自动注册任务名称

我有一个看起来像这样的任务frommybasetask_moduleimportMyBaseTask@task(base=MyBaseTask)@my_custom_decoratordefmy_task(*args,**kwargs):pass我的基本任务是这样的fromceleryimporttask,TaskclassMyBaseTask(Task):abstract=Truedefault_retry_delay=10max_retries=3acks_late=True我遇到的问题是celeryworker正在用名称注册任务'mybasetask_module.__inner

javascript - 错误 : Opening Robot Framework log failed

如果我打开由RobotFramework生成的任何.html文件并尝试使用任何可用的Python代码或内置命令行工具将其转换为任何其他格式(例如,docxformate)。我遇到了以下错误,打开机器人框架日志失败•验证您的浏览器是否启用了JavaScript。•确保您使用的是足够现代的浏览器。需要Firefox3.5、IE8或同等版本,建议使用更新的浏览器。•检查浏览器的JavaScript错误日志中是否有消息。如果您怀疑遇到错误,请报告问题。·即使我已经在我的浏览器中启用了JavaScript,我仍然收到此错误。我在Mac上使用MozillaFirefox版本45.0.2。谁能帮我解

python 2.7 : log displayed twice when `logging` module is used in two python scripts

上下文:Python2.7。同一文件夹中的两个文件:首先:主脚本。第二:自定义模块。目标:可以在没有任何冲突的情况下使用logging模块(见下面的输出)。文件:a.py:importloggingfrombimporttest_bdeftest_a(logger):logger.debug("debug")logger.info("info")logger.warning("warning")logger.error("error")if__name__=="__main__":#Customlogger.logger=logging.getLogger("test")formatt

python - 如何监控 celery 中的队列健康状况

我有以下设置:具有100个工作器的通用工作器池具有50个工作器的高优先级工作器池我使用如此大的数字是因为我的任务大部分时间都在等待超时很长的I/O(执行可能需要长达20秒才能响应的HTTP请求)使用RabbitMQ作为代理我已经使用init.dscripts将celeryd设置为守护进程来自celery'dgithub,具有以下参数:CELERYD_OPTS="--time-limit=600-c:low_p100-c:high_p50-Q:low_plow_priority_queue_name-Q:high_phigh_priority_queue_name"我的问题是,有时队列似