You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

日志文件无内容写入问题排查:自定义Python日志函数异常

日志写入失败的问题排查与修复

1. 补全缺失的模块导入

你的代码里用到了logging和time模块,但没有导入,直接运行会报错终止,根本执行不到写入日志的步骤。必须在代码开头添加:

import logging
import time

2. 解决未定义的变量/函数报错

代码里的getWorkingFile()函数和FILENAME变量没有定义,执行到对应行时会抛出NameError导致脚本中断,日志自然无法写入。你可以:

  • 自己实现getWorkingFile()函数,比如返回当前脚本的文件名
  • 将这部分内容替换成实际存在的值,或者先删掉该行测试基础日志功能

3. 处理日志缓冲问题(可选)

如果前面的修复完成后仍无日志内容,可能是日志模块的缓冲机制导致内容未即时写入文件。可以在basicConfig中添加flush=True参数强制刷新:

logging.basicConfig(filename=LOG_FILE, level=logging.INFO, flush=True)

修复后的可运行测试代码

import logging
import time

LOG_FILE='log.txt'
logging.basicConfig(filename=LOG_FILE, level=logging.INFO, flush=True)

# 示例实现getWorkingFile函数
def getWorkingFile():
    import os
    return os.path.basename(__file__)

# 替换成你实际的目标文件名
FILENAME = "example.txt"

def createLoggingInfo(message:str):
    timestamp = time.ctime()
    log_message = f'{timestamp} {message}'
    logging.info(log_message)
    logging.info(f'\n\nWriting from {getWorkingFile()} to {FILENAME} was successful')
    
createLoggingInfo('i am writing something')

额外检查点

  • 确认脚本拥有当前目录的写入权限,避免因权限问题无法生成日志文件
  • 检查是否有其他代码修改了logging配置,覆盖了basicConfig的设置

内容的提问来源于stack exchange,提问作者kushywushy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 17:22:10