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

【待反馈】python项目日志切割异常

发表在 BUG提交2024-9-19 11:31 [复制链接] 10 1698

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


使用道具 举报 只看该作者 回复
发表于 2024-9-21 17:21:59 | 显示全部楼层
看一下所提示的文件是否存在
使用道具 举报 回复 支持 反对
发表于 2024-9-21 19:25:37 | 显示全部楼层
运维技术阿闯 发表于 2024-9-21 17:21
看一下所提示的文件是否存在

没有这个文件,但是项目启动方式是“命令行启动”,并没有使用“uwsgi” Snipaste_2024-09-21_19-23-42.jpg
使用道具 举报 回复 支持 反对
发表于 2024-9-23 17:38:27 | 显示全部楼层
宝塔用户_zrilfl 发表于 2024-9-21 19:25
没有这个文件,但是项目启动方式是“命令行启动”,并没有使用“uwsgi”
...

修复一下面板后重新写一个计划任务看看
使用道具 举报 回复 支持 反对
发表于 2024-9-23 17:54:57 | 显示全部楼层
运维技术阿闯 发表于 2024-9-23 17:38
修复一下面板后重新写一个计划任务看看

试过了,问题依旧
使用道具 举报 回复 支持 反对
发表于 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"])


出现问题逻辑的代码定位

出现问题逻辑的代码定位


使用道具 举报 回复 支持 反对
发表于 2024-10-3 10:11:53 | 显示全部楼层
楼上的666

我觉得这个逻辑应该先判断gunicorn和uwsgi,其他默认按照python来处理日志
使用道具 举报 回复 支持 反对
发表于 2024-10-6 15:53:19 | 显示全部楼层
是的,自从上次更新后会出现这种问题,明明我只是用fastapi写了个简单的api,启动方式使用了python main.py。以前能正常切割日志,自从上次更新之后就不行了。
使用道具 举报 回复 支持 反对
发表于 2024-10-10 10:08:30 | 显示全部楼层
运维技术阿闯 发表于 2024-9-23 17:38
修复一下面板后重新写一个计划任务看看

普遍都有这个问题,尽快修复吧
使用道具 举报 回复 支持 反对
发表于 2024-10-29 15:17:19 | 显示全部楼层
问题反馈过了
使用道具 举报 回复 支持 反对
发表于 2024-11-22 16:59:01 | 显示全部楼层

这个问题在9.2正式版中已经修复了,在9.0稳定版中仍然存在
使用道具 举报 回复 支持 反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

普通问题处理

论坛响应时间:72小时

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

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

紧急运维服务

响应时间:3分钟

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

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

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

立即付费处理

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

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