找不到记录器 "elasticsearch.trace" 的处理程序
No handlers could be found for logger "elasticsearch.trace"
更新:
事实证明,这不是 cron 的功能。 运行从命令行运行脚本时,如果它实际上有一个记录要处理并与 ElasticSearch 通信,我会得到相同的行为。
我有一个 cron 作业 运行 是一个 python 脚本,它使用 pyelasticsearch
为 ElasticSearch 实例中的一些文档编制索引。该脚本在命令行中运行良好,但是当通过 cron 运行 时,它会导致此错误:
No handlers could be found for logger "elasticsearch.trace"
显然有一些日志记录配置问题只会在 运行 在 cron 下出现,但我不清楚它是什么。有什么见解吗?
我通过为 elasticsearch.trace
记录器显式配置处理程序解决了这个问题,正如我在 pyelasticsearch 存储库 examples 中看到的那样。
导入 pyelasticsearch 后,像这样设置一个处理程序:
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())
更新: 事实证明,这不是 cron 的功能。 运行从命令行运行脚本时,如果它实际上有一个记录要处理并与 ElasticSearch 通信,我会得到相同的行为。
我有一个 cron 作业 运行 是一个 python 脚本,它使用 pyelasticsearch
为 ElasticSearch 实例中的一些文档编制索引。该脚本在命令行中运行良好,但是当通过 cron 运行 时,它会导致此错误:
No handlers could be found for logger "elasticsearch.trace"
显然有一些日志记录配置问题只会在 运行 在 cron 下出现,但我不清楚它是什么。有什么见解吗?
我通过为 elasticsearch.trace
记录器显式配置处理程序解决了这个问题,正如我在 pyelasticsearch 存储库 examples 中看到的那样。
导入 pyelasticsearch 后,像这样设置一个处理程序:
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())