宝塔用户_zrilfl 发表于 2024-9-19 11:31:13

【已完成】python项目日志切割异常

python项目,命令行启动,最近更新后发现日志没有切割,具体出现问题的版本不详。更新到9.2.0问题依旧存在。两台服务器均有此问题,切割日志如下★ 切割日志
==================================================================
|---切割方式: 每天切割1份
|---当前保留最新的份
|---开始对Python项目的日志进行操作
|---项目matter_server的目标日志文件:/www/wwwlogs/python/matter_server/uwsgi.log已丢失,请注意
|---已完成对Python项目的日志分割任务
=================已完成所有日志切割任务==================
----------------------------------------------------------------------------
★ Successful

运维技术阿闯 发表于 2024-9-21 17:21:59

看一下所提示的文件是否存在

宝塔用户_zrilfl 发表于 2024-9-21 19:25:37

运维技术阿闯 发表于 2024-9-21 17:21
看一下所提示的文件是否存在

没有这个文件,但是项目启动方式是“命令行启动”,并没有使用“uwsgi”

运维技术阿闯 发表于 2024-9-23 17:38:27

宝塔用户_zrilfl 发表于 2024-9-21 19:25
没有这个文件,但是项目启动方式是“命令行启动”,并没有使用“uwsgi”
...

修复一下面板后重新写一个计划任务看看

宝塔用户_zrilfl 发表于 2024-9-23 17:54:57

运维技术阿闯 发表于 2024-9-23 17:38
修复一下面板后重新写一个计划任务看看

试过了,问题依旧

宝塔用户_pntpvq 发表于 2024-9-29 17:22:23

我也出现了一模一样的问题,自行排查下来,是宝塔自己的python模块对python项目运行的类型识别有问题,导致日志切割的执行逻辑落在uswgi的日志上。
我手动切割方法的源码将其魔改成下面这样,可以一定程度上解决问题,但是风险请自行承担。。。
请官方尽快修复这个问题,谢谢!!


    def for_split(self, logsplit, project):
      """日志切割方法调用
      @author baozi <202-03-20>
      @param:
            logsplit( LogSplit ):日志切割方法,传入 pjanme:项目名称 sfile:日志文件路径 log_prefix:产生的日志文件前缀
            project( dict ):项目内容
      @return
      """
      if project['project_config']["stype"] == "python":
            log_file = project['project_config']["logpath"] + "/error.log"
            logsplit(project["name"], log_file, project["name"])
      elif project['project_config']["stype"] == "gunicorn":
            log_file = project['project_config']["logpath"] + "/gunicorn_error.log"
            logsplit(project["name"], log_file, project["name"] + "_error")
            log_file2 = project['project_config']["logpath"] + "/gunicorn_acess.log"
            logsplit(project["name"], log_file2, project["name"] + "_acess")
      elif project['project_config']["stype"] == "uwsgi":
            log_file = project['project_config']["logpath"] + "/uwsgi.log"
            logsplit(project["name"], log_file, project["name"])
      else:
            log_file = project['project_config']["logpath"] + "/error.log"
            logsplit(project["name"], log_file, project["name"])




宝塔用户_zrilfl 发表于 2024-10-3 10:11:53

楼上的666

我觉得这个逻辑应该先判断gunicorn和uwsgi,其他默认按照python来处理日志

宝塔用户_mnpyjj 发表于 2024-10-6 15:53:19

是的,自从上次更新后会出现这种问题,明明我只是用fastapi写了个简单的api,启动方式使用了python main.py。以前能正常切割日志,自从上次更新之后就不行了。

宝塔用户_zrilfl 发表于 2024-10-10 10:08:30

运维技术阿闯 发表于 2024-9-23 17:38
修复一下面板后重新写一个计划任务看看

普遍都有这个问题,尽快修复吧

运维技术阿闯 发表于 2024-10-29 15:17:19

问题反馈过了

宝塔用户_zrilfl 发表于 2024-11-22 16:59:01

运维技术阿闯 发表于 2024-10-29 15:17
问题反馈过了

这个问题在9.2正式版中已经修复了,在9.0稳定版中仍然存在

堡塔运维南一 发表于 2024-12-5 15:59:51

您好,这个问题如果没有解决的话,请重新发帖哈,这篇帖子就关闭了
页: [1]
查看完整版本: 【已完成】python项目日志切割异常