common_log.py 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. # -*- coding: utf-8 -*-
  2. # @Time: 2023/12/26
  3. """
  4. 公共方法,包含:生成log / 删除log / 下载方法 / 删除 weixinzhishu_chlsfiles / 过滤词库 / 保存视频信息至本地 txt / 翻译 / ffmpeg
  5. """
  6. import os
  7. import sys
  8. sys.path.append(os.getcwd())
  9. from datetime import date, timedelta
  10. from datetime import datetime
  11. from loguru import logger
  12. proxies = {"http": None, "https": None}
  13. class Common:
  14. # 统一获取当前时间 <class 'datetime.datetime'> 2022-04-14 20:13:51.244472
  15. now = datetime.now()
  16. # 昨天 <class 'str'> 2022-04-13
  17. yesterday = (date.today() + timedelta(days=-1)).strftime("%Y-%m-%d")
  18. # 今天 <class 'datetime.date'> 2022-04-14
  19. today = date.today()
  20. # 明天 <class 'str'> 2022-04-15
  21. tomorrow = (date.today() + timedelta(days=1)).strftime("%Y-%m-%d")
  22. # 使用 logger 模块生成日志
  23. @staticmethod
  24. def logger(log_type):
  25. try:
  26. """
  27. 使用 logger 模块生成日志
  28. """
  29. # 日志路径
  30. log_dir = f"./logs/{log_type}/"
  31. log_path = os.getcwd() + os.sep + log_dir
  32. if not os.path.isdir(log_path):
  33. os.makedirs(log_path)
  34. # 日志文件名
  35. log_name = f"{log_type}-{datetime.now().date().strftime('%Y-%m-%d')}.log"
  36. # 日志不打印到控制台
  37. logger.remove(handler_id=None)
  38. # 初始化日志
  39. logger.add(os.path.join(log_dir, log_name), level="INFO", rotation="00:00", retention="10 days", enqueue=True)
  40. return logger
  41. except Exception as e:
  42. Common.logger("aly-logger").log(f"阿里云日志上报异常{e}")
  43. return None