如何为 apscheduler 指定“记录器”

2024-05-13

我正在尝试学习如何使用 Python 的 apscheduler 包,但它会定期抛出以下错误:

No handlers could be found for logger "apscheduler.scheduler"

该消息似乎与计划作业中的错误有关,例如,使用 jobTester 作为计划作业,以下代码在 jobTester 中使用未定义的变量(nameStr0)给出了上述错误消息:

from apscheduler.scheduler import Scheduler
from apscheduler.jobstores.shelve_store import ShelveJobStore
from datetime import datetime, timedelta
from schedJob import toyJob

def jobTester(nameStr):
    outFileName = nameStr0 + '.txt'
    outFile = open(outFileName,'w')
    outFile.write(nameStr)
    outFile.close()

def schedTester(jobList):
    scheduler = Scheduler()
    scheduler.add_jobstore(ShelveJobStore('example.db'),'shelve')
    refTime = datetime.now()

    for index, currJob in enumerate(jobList):
        runTime = refTime + timedelta(seconds = 15)
        jobName = currJob.name + '_' + str(index)
        scheduler.add_date_job(jobTester, runTime, name = jobName,
                           jobstore = 'shelve', args = [jobName])


    scheduler.start()
    stopTime = datetime.now() + timedelta(seconds = 45)
    print "Starting wait loop .....",
    while stopTime > datetime.now():
        pass
    print "Done"

def doit():
    names = ['Alan','Barbara','Charlie','Dana']
    jobList = [toyJob(n) for n in names]
    schedTester(jobList)

通过运行此代码(存储在文件 schedTester.py 中)可以看到这一点,如下所示:

>>> import schedTester
>>> schedTester.doit()
No handlers could be found for logger "apscheduler.scheduler"
Starting wait loop ..... Done

但是,当我用 nameStr 替换 nameStr0 (即变量名的正确拼写)时,代码运行良好,没有错误消息。

  1. 如何为 apscheduler.scheduler 创建记录器?我在处理配置调度程序的文档部分中遗漏了一些内容吗

  2. 我是否正确地将这个记录器视为某种 stderr ?如果是这样,我将在哪里寻找它(如果这不是由我设置的方式决定的)


您可以创建一个默认记录器,所有内容都应该转到它:

import logging
logging.basicConfig()

仅当您使用尚未定义的变量时才会出现问题的原因是,这会导致jobTester函数抛出 apscheduler 正在捕获并尝试写入错误消息的错误logging.error()。由于您还没有设置记录器,它会抱怨。

如果你读过蟒蛇记录 http://docs.python.org/howto/logging.html#logging-basic-tutorial你会发现有很多方法可以配置它。您可以让它将所有内容记录到文件中或将其打印到标准输出。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何为 apscheduler 指定“记录器” 的相关文章

随机推荐

  • 将结果绑定到不同项目中的 Web API

    我正在尝试创建一个 SPA 应用程序 以利用upshot及其能力 但是 公开数据的服务 即 Web API 位于一个完全独立的项目中 已托管在 IIS 上 我想将结果绑定到现有的 API 但从我在结果 v1 0 0 1 的 HTML 帮助程
  • 通过 SSH 的 Pygame 不注册击键(Raspberry Pi 3)

    所以我得到了 raspi 3 和简单的 8x8 LED 矩阵 在玩了一些之后 我决定用 pygame 的事件制作一个简单的蛇游戏 显示在该矩阵上 我之前没有 pygame 的经验 除了 LED 矩阵之外 没有连接任何屏幕 显示器 所以最初的
  • 使用 Android NDK r5b 链接静态库时出现问题 [重复]

    这个问题在这里已经有答案了 最近升级到 NDK r5b 构建失败 并出现对静态库中函数的 未定义引用 这是错误 home brian workspace VoiceEngineDemo obj local armeabi v7a objs
  • 将“Map>”转换为“Map>”

    我想投一个Map
  • XSLT;将转义文本解析为节点集并提取子元素

    我一整天都在与这个问题作斗争 几乎束手无策 我有一个 XML 文件 其中数据的某些部分存储为转义文本 但它们本身是格式良好的 XML 我想将此文本节点中的整个层次结构转换为节点集并提取其中的数据 我能想到的变量和函数的组合都不起作用 我期望
  • iPhone OpenGL ES 单视图还是多视图?

    我很困惑为 iPhone 编写游戏时最好的方法是什么 游戏将使用 OpenGL 渲染 但我很好奇创建开始屏幕 菜单 高分页面等 您是否使用 OpenGL 完成所有这些操作 或者创建额外的 UIView 并使用 UIKit 我认为没有最好的方
  • Firebase 模拟器无法促进/运行新功能

    我有三个云功能 其中两个已部署到我的 firebase 项目中 其中一个是我刚刚添加的 我希望在部署之前在本地测试新的功能 但是当我尝试使用它时却无法使用 并且只有两个已部署的功能可用 Firebase 模拟器在端口上运行良好5001 像往
  • 从 wit.ai 上的备份导入应用程序时出错

    自本周末以来 当我尝试通过从另一个应用程序保存的备份导入来在 Wit ai 中创建新应用程序时 我收到一条空白错误消息 并且新应用程序仅接收备份中的部分信息 这是空白的错误消息 https i stack imgur com hlDa5 p
  • Java中如何对对象数组进行排序?

    我的数组不包含任何字符串 但它包含对象引用 每个对象引用都通过 toString 方法返回名称 id 作者和发布者 public String toString return name n id n author n publisher n
  • 自定义 WCF DataContractSerializer

    是否可以用我自己的序列化程序替换 Windows Communication Foundation 中的 dataContractSerializer 如果可能的话 我怎样才能实现这一目标 是的 您可以提供自己的序列化器实现 默认情况下 W
  • 属性上的 ConditionalAttribute 有什么作用?

    我知道什么ConditionalAttribute does 文档说它也可以应用于一个类 如果它派生自Attribute Conditional DEBUG public class FooAttribute Attribute 但该自定义
  • 如何在 Clojure 中链接 Promise

    在 Scala 中 您可以使用map and flatMap在未来的成功结果上运行函数 val x Future Int val y Future String x map toString 有没有比以下更好的 Clojure 类似物 de
  • 在 pandas 数据框中按列应用 Seaborn 热图

    我试图在枢轴熊猫数据帧上使用seaborn的热图 就像在超链接中一样有效 df pd DataFrame np random randint 1 100 size 3 2 df columns A B df sns heatmap df a
  • Spring REST 控制器中带有 RequestBody 的 XML/JSON POST

    我正在使用 Spring 3 0 创建一个 RESTful 网站 我在用ContentNegotiatingViewResolver以及 HTTP 消息转换器 例如MappingJacksonHttpMessageConverter对于 J
  • JavaScript 中的可选参数

    如果缺少剩余参数 为什么该函数不会抛出错误 showStatistics Mark Teixeira New York Yankees 1st Base 这是定义的函数 function showStatistics name team p
  • Google 操作面板中缺少配置撤销令牌 URL 的选项

    在 Google Actions 面板中 我们可以启用帐户链接 我们还可以指定授权 URL 支持 OAuth2 代码或隐式流的登录网页的端点 和令牌 URL 用于令牌交换的 OAuth2 端点 端点配置镜像 https i stack im
  • 修饰符 async 对此项目无效

    这似乎并不是数百个具有相同错误的其他问题的重复 我把它们都看过了 发现它们是无关的 我正在制作一个小笔记应用程序 并尝试从目录中读取文件 按照 MSDN 示例 我有以下代码 但它给了我一个错误 错误 1 修饰符 async 对此无效 项目
  • 苹果游戏中心 API

    我无法找到包含 Game Center Reference 的 GameKit api Apple Game Center 是 iOS 上的一个新社交网络平台 其描述如下 iOS4 中的新增功能 1 GameKit iOS 参考在这里 ht
  • 如何使用 CSS 或 javascript 创建圆角

    复制 使用 CSS 创建圆角的最佳方法是什么 https stackoverflow com questions 7089 what is the best way to create rounded corners using css 7
  • 如何为 apscheduler 指定“记录器”

    我正在尝试学习如何使用 Python 的 apscheduler 包 但它会定期抛出以下错误 No handlers could be found for logger apscheduler scheduler 该消息似乎与计划作业中的错