当前位置:论坛首页 > BUG提交 > Linux面板

【已记录】9.2.0面板 python项目计划任务-日志切割报错

发表在 BUG提交2024-9-29 17:28 [复制链接] 1 412

系统版本:CentOS 7.9.2009 x86_64(Py3.7.9)面板版本:9.2.0


python项目以命令行执行,出现的情况与这个帖子几乎一模一样。
【待反馈】python项目日志切割异常 - BUG提交 - 宝塔面板论坛 (bt.cn)

1、以命令行执行,切割执行提示“uwsgi.log已丢失”,但显示切割成功,然而实际上并没有进行切割
2、在项目目录中添加一个空白的uwsgi.log文件后再次手动执行任务面板,显示切割成功,history备份目录下也新增了文件,但是是一个空的_log.log文件。


自行排查下来是宝塔自己的pythonModal.py对于python项目类型判断有问题,导致默认日志文件都去找uwsgi.log了。

通过魔改的方式可以暂时解决问题,但请官方修改这个bug,以免影响进一步扩大。

问题源码定位

问题源码定位


红字为魔改的部分
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"])

使用道具 举报 只看该作者 回复
发表于 2024-10-21 11:59:10 | 显示全部楼层
这边记录一下
使用道具 举报 回复 支持 反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

普通问题处理

论坛响应时间:72小时

问题处理方式:排队(仅解答)

工作时间:白班:9:00 - 18:00

紧急运维服务

响应时间:3分钟

问题处理方式:宝塔专家1对1服务

工作时间:工作日:9:00 - 18:30

宝塔专业团队为您解决服务器疑难问题

立即付费处理

工作时间:09:00至24:00

快速回复 返回顶部 返回列表