continew-org / continew-admin

🔥Almost最佳后端规范🔥持续迭代优化的前后端分离中后台管理系统框架,开箱即用,持续提供舒适的开发体验。当前采用技术栈:Spring Boot3(Java17)、Vue3 & Arco Design、TS、Vite5 、Sa-Token、MyBatis Plus、Redisson、JetCache、Jackson、Spring Doc、JustAuth、Easy Excel、Crane4j、Liquibase、Hutool 等。
https://continew.top
Apache License 2.0
520 stars 123 forks source link

初始化语句需要更新 #28

Closed feacx closed 9 months ago

feacx commented 9 months ago

Bug 描述

首先感谢作者Charles提供与维护本项目,这个项目使用的技术栈我相信都是精挑细选,与我不谋而合。感谢您。

我通过文档中的指导一步步运行起来后,控制台输出了 sys_log 表的 descriptionmodule 字段不允许为空且未设置默认值,我手动将数据库里的这两个字段改为允许为空、默认值为NULL后,一切恢复了正常。我知道这个不是正确的解决方法,应该需要去看代码的逻辑,为何会产生为空的数据。但是我遇到了先反馈。

我认为这个问题的发生是在作者的电脑发生时,作者手动修改了数据库,但未更新初始化SQL语句文件,然而也没用其他人提出这个问题,所以这个SQL文件将永远不会更新,希望作者更新一下此文件,后续其他人不会遇到相同问题,也不会遗失重要的日志。

复现步骤

从0创建项目。 一定要用一个崭新的数据库!! 项目启动后,访问Swagger,并随意点击几个API。 查看控制台

预期结果

不报错

环境信息

release - 2.2.0

额外补充

No response

确认

Charles7c commented 9 months ago

感谢您的使用,v2.2.0 版本的系统日志功能是重新基于 ContiNew Startercontinew-starter-log-httptrace-pro 组件( v1.1.0 版本)开发的,这一日志组件设计的时候,可以根据个人需要调整记录的内容,默认情况下不记录 descriptionmodule 信息,以记录 HTTP 请求信息为主。

但是,我在适配的时候,已经在 ContiNew Admin application.yml 中增加了这段配置,要求它记录 descriptionmodule 信息,以适配本系统的操作日志功能。

--- ### 日志配置
continew-starter.log:
  enabled: true
  # 包含信息
  include:
    - DESCRIPTION
    - MODULE
    - REQUEST_HEADERS
    - REQUEST_BODY
    - IP_ADDRESS
    - BROWSER
    - OS
    - RESPONSE_HEADERS
    - RESPONSE_BODY

方便的话,发一下你点击报错的 API Controller 定义情况以及对应日志配置,也可以加一下交流群沟通一下。

Charles7c commented 9 months ago

终于复现了问题,此问题应该是 v2.2.0 适配 ContiNew Starter Log 模块后出现的。原因是 v2.2.0 之前 ContiNew Admin 在开发环境默认不记录 GET 请求,所以没有出现过此问题。但到了适配 ContiNew Starter Log 后,GET 请求也默认记录请求日志了,此时问题就出现了。 感谢反馈,已在 ContiNew Starter 修复,预计周末发版。详情见 ContiNew Starter 提交记录 https://github.com/Charles7c/continew-starter/commit/f3ad2c48a9511ef611d414596539e838adef8e45