feat: 添加设置日志级别功能

This commit is contained in:
Olia Lisa
2026-07-30 10:02:41 +08:00
parent 821051a52e
commit cbedcf6094
3 changed files with 64 additions and 8 deletions
+47
View File
@@ -0,0 +1,47 @@
set_log_level(){
# config 配置文件路径
local SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" # 脚本文件夹绝对路径
local CONFIG_FILE="$SCRIPT_DIR/../config/config.json" # 配置文件路径
# 检查配置文件是否存在
if [[ ! -f "$CONFIG_FILE" ]]; then
echo "错误:配置文件不存在 - $CONFIG_FILE" >&2
exit 1
fi
CURRENT_LEVEL="$(jq -r '.log.level // empty' "$CONFIG_FILE" 2>/dev/null)"
echo ""
if [[ -n "$CURRENT_LEVEL" ]]; then
echo "当前日志级别:$(cyan "$CURRENT_LEVEL")"
else
echo "当前日志级别:未知(无法解析配置文件)"
fi
# 日志等级,可选值:trace debug info warn error fatal panic
# 请用户选择新的日记级别
local LEVELS=("trace" "debug" "info" "warn" "error" "fatal" "panic")
local LEVEL=""
echo "请选择日志级别:"
local i=1
for lv in "${LEVELS[@]}"; do
echo " $i) $lv"
((i++))
done
while true; do
read -rp "请输入序号 [1-${#LEVELS[@]}]: " input
if [[ "$input" =~ ^[0-9]+$ ]] && (( input >= 1 && input <= ${#LEVELS[@]} )); then
LEVEL="${LEVELS[$((input-1))]}"
break
else
echo "输入无效,请输入 1 到 ${#LEVELS[@]} 之间的数字。"
fi
done
# 修改日记级别
modify_json_file "$CONFIG_FILE" "log.level" "$LEVEL"
green "日志级别已改修为:$LEVEL"
}
+3
View File
@@ -8,6 +8,9 @@ green(){
echo -e "\033[32m$1\033[0m" echo -e "\033[32m$1\033[0m"
} }
cyan(){
echo -e "\033[36m$1\033[0m"
}
# 动态安装软件包 # 动态安装软件包
install_package() { install_package() {
+6
View File
@@ -154,6 +154,8 @@ main(){
echo "8. 更新镜像" echo "8. 更新镜像"
echo "9. 更新脚本" echo "9. 更新脚本"
echo "10. 开启BBR加速" echo "10. 开启BBR加速"
echo "11. 修改日记等级"
# 读取用户选择 # 读取用户选择
local CHOICE local CHOICE
@@ -219,6 +221,10 @@ main(){
# 开启BBR加速 # 开启BBR加速
enable_kernel_bbr enable_kernel_bbr
;; ;;
11)
# 修改日志等级
set_log_level
;;
*) *)
echo "无效的选择, 请重新选择." echo "无效的选择, 请重新选择."
;; ;;