更新:原来,这不是cron的一个功能。在从命令行运行脚本时,如果脚本实际上有要处理的记录并与ElasticSearch通信,我会得到相同的行为。
我有一个cron作业,它运行一个python脚本,它使用pyelasticsearch在ElasticSearch实例中索引一些文档。脚本在命令行中运行良好,但是当通过cron运行时,它会导致以下错误:
无法为记录器"elasticsearch.trace“找到处理程序。
显然,只有在cron下运行时才会出现一些日志配置问题,但我不清楚这是什么。有洞察力吗?
发布于 2015-11-25 08:35:33
我通过显式地为elasticsearch.trace记录器配置一个处理程序来解决这个问题,就像我在示例中看到的那样。
导入弹搜索之后,设置如下处理程序:
tracer = logging.getLogger('elasticsearch.trace')
tracer.setLevel(logging.INFO)
tracer.addHandler(logging.FileHandler('/tmp/es_trace.log'))我对保存跟踪日志不感兴趣,所以我使用了近在咫尺的Django NullHandler。
from django.utils.log import NullHandler
tracer = logging.getLogger('elasticsearch.trace')
tracer.setLevel(logging.INFO)
tracer.addHandler(NullHandler())https://stackoverflow.com/questions/33903202
复制相似问题