抖音弹幕游戏开发之第17集:添加日志系统·优雅草云桧·卓伊凡

《抖音弹幕游戏开发专栏》是优雅草建立的专栏,由优雅草资深开发工程师云桂提供实战教学配对发布有对应的视频教程,以下内容为技术文稿,卓伊凡辅助。
抖音弹幕游戏开发之第17集:添加日志系统·优雅草云桧·卓伊凡

第17集:添加日志系统

为什么需要日志系统

print的问题:

  • 信息会消失
  • 没有时间戳
  • 没有级别区分
  • 不便于分析

日志系统优势:

  • 持久化存储到文件
  • 每条日志有精确时间
  • 级别分类(DEBUG/INFO/WARNING/ERROR)
  • 格式统一,便于分析

日志级别

|----------|-------------|
| 级别 | 说明 |
| DEBUG | 调试信息,最详细 |
| INFO | 一般信息,正常运行记录 |
| WARNING | 警告信息,可能有问题 |
| ERROR | 错误信息,功能受影响 |
| CRITICAL | 严重错误,程序可能崩溃 |

配置日志系统

复制代码
import logging
from datetime import datetime

logging.basicConfig(
    level=logging.INFO,
    format='%(asctime)s [%(levelname)s] %(message)s',
    datefmt='%Y-%m-%d %H:%M:%S',
    handlers=[
        logging.FileHandler(
            f'danmu_log_{datetime.now().strftime("%Y%m%d")}.txt',
            encoding='utf-8'
        ),
        logging.StreamHandler()  # 同时输出到控制台
    ]
)

logger = logging.getLogger(__name__)

替换print为logger

复制代码
# 连接成功
logger.info("抖音直播弹幕整蛊插件已启动!")

# 弹幕消息
logger.info(f"💬 [弹幕] {name}: {content}")

# 触发成功
logger.info(f"✓ 触发: {keyword} -> {key}")

# 冷却提示(用debug,太频繁)
logger.debug(f"⏰ 冷却中,还需等待 {remaining:.1f} 秒")

# 错误信息
logger.error(f"JSON解析失败: {e}")

# 警告信息
logger.warning("⚠️ 触发紧急停止!")

日志输出效果

复制代码
2024-12-28 15:30:45 [INFO] 正在连接弹幕服务器...
2024-12-28 15:30:46 [INFO] 抖音直播弹幕整蛊插件已启动!
2024-12-28 15:30:50 [INFO] 💬 [弹幕] 用户A: 跳
2024-12-28 15:30:50 [INFO] ✓ 触发: 跳 -> space

日志文件管理

每天一个日志文件:danmu_log_20241228.txt

本集总结

  • ✅ 理解日志系统的重要性
  • ✅ 配置Python的logging模块
  • ✅ 替换所有print为logger
  • ✅ 学习日志级别的使用
相关推荐
幸运小圣2 分钟前
全面解析 Web 核心性能指标:LCP、INP、CLS 是什么、怎么用、怎么看
前端
如果超人不会飞7 分钟前
TinyRobot SuggestionPopover智能建议弹出框组件
前端·vue.js
LiuJun2Son22 分钟前
Angular 快速入门:从零搭建你的第一个应用
前端·javascript·angular.js
小徐_233330 分钟前
Wot UI 2.1.0 发布:ConfigProvider 全局配置能力升级
前端·uni-app
方白羽31 分钟前
Vibe Coding 四个核心阶段
android·前端·app
奶油话梅糖31 分钟前
浏览器解析 HTML 头部的底层逻辑:从字节流到资源调度
前端·html
YHL31 分钟前
🚀从零理解树与二叉树 —— 概念、实现与遍历
前端·javascript·数据结构
小时前端33 分钟前
微前端技术选型深度分析:从概念到实践
前端
wyhwust1 小时前
基于Apifox的接口管理工具
前端
柒和远方1 小时前
后端认证、鉴权、高并发:从 Session 到 JWT 再到 Redis
前端·后端·面试