|
|
@@ -910,6 +910,42 @@ uninstall_all() {
|
|
|
echo_content skyBlue "---> 卸载全部Trojan Panel相关的容器完成"
|
|
|
}
|
|
|
|
|
|
+# 刷新Redis缓存
|
|
|
+redis_flush_all() {
|
|
|
+ # 判断Redis是否安装
|
|
|
+ if [[ -z $(docker ps -a -q -f "name=^trojan-panel-redis$") ]]; then
|
|
|
+ echo_content red "---> 请先安装Redis"
|
|
|
+ exit 0
|
|
|
+ fi
|
|
|
+
|
|
|
+ if [[ -z $(docker ps -q -f "name=^trojan-panel-redis$" -f "status=running") ]]; then
|
|
|
+ echo_content red "---> Redis运行异常"
|
|
|
+ exit 0
|
|
|
+ fi
|
|
|
+
|
|
|
+ echo_content green "---> 刷新Redis缓存"
|
|
|
+
|
|
|
+ read -r -p "请输入Redis的IP地址(默认:本机Redis): " redis_host
|
|
|
+ [[ -z "${redis_host}" ]] && redis_host="127.0.0.1"
|
|
|
+ read -r -p "请输入Redis的端口(默认:本机Redis端口): " redis_port
|
|
|
+ [[ -z "${redis_port}" ]] && redis_port=6379
|
|
|
+ while read -r -p "请输入Redis的密码(必填): " redis_pass; do
|
|
|
+ if [[ -z "${redis_pass}" ]]; then
|
|
|
+ echo_content red "密码不能为空"
|
|
|
+ else
|
|
|
+ break
|
|
|
+ fi
|
|
|
+ done
|
|
|
+
|
|
|
+ if [[ "${redis_host}" == "127.0.0.1" ]]; then
|
|
|
+ docker exec trojan-panel-redis redis-cli -a "${redis_pass}" -e "flushall" &>/dev/null
|
|
|
+ else
|
|
|
+ docker exec trojan-panel-redis redis-cli -h "${redis_host}" -p ${redis_port} -a "${redis_pass}" -e "flushall" &>/dev/null
|
|
|
+ fi
|
|
|
+
|
|
|
+ echo_content skyBlue "---> Redis缓存刷新完成"
|
|
|
+}
|
|
|
+
|
|
|
# 故障检测
|
|
|
failure_testing() {
|
|
|
echo_content green "---> 故障检测开始"
|
|
|
@@ -944,39 +980,41 @@ failure_testing() {
|
|
|
echo_content green "---> 故障检测结束"
|
|
|
}
|
|
|
|
|
|
-redis_flush_all() {
|
|
|
- # 判断Redis是否安装
|
|
|
- if [[ -z $(docker ps -a -q -f "name=^trojan-panel-redis$") ]]; then
|
|
|
- echo_content red "---> 请先安装Redis"
|
|
|
- exit 0
|
|
|
- fi
|
|
|
-
|
|
|
- if [[ -z $(docker ps -q -f "name=^trojan-panel-redis$" -f "status=running") ]]; then
|
|
|
- echo_content red "---> Redis运行异常"
|
|
|
- exit 0
|
|
|
- fi
|
|
|
-
|
|
|
- echo_content green "---> 刷新Redis缓存"
|
|
|
-
|
|
|
- read -r -p "请输入Redis的IP地址(默认:本机Redis): " redis_host
|
|
|
- [[ -z "${redis_host}" ]] && redis_host="127.0.0.1"
|
|
|
- read -r -p "请输入Redis的端口(默认:本机Redis端口): " redis_port
|
|
|
- [[ -z "${redis_port}" ]] && redis_port=6379
|
|
|
- while read -r -p "请输入Redis的密码(必填): " redis_pass; do
|
|
|
- if [[ -z "${redis_pass}" ]]; then
|
|
|
- echo_content red "密码不能为空"
|
|
|
- else
|
|
|
+log_query() {
|
|
|
+ while :; do
|
|
|
+ echo_content skyBlue "可以查询日志的应用如下:"
|
|
|
+ echo_content yellow "1. Trojan Panel"
|
|
|
+ echo_content yellow "2. Trojan Panel Core"
|
|
|
+ echo_content yellow "3. 退出"
|
|
|
+ read -r -p "请选择应用(默认:1): " select_log_query_type
|
|
|
+ [[ -z "${select_log_query_type}" ]] && select_log_query_type=1
|
|
|
+
|
|
|
+ case ${select_log_query_type} in
|
|
|
+ 1)
|
|
|
+ log_file_path=${TROJAN_PANEL_LOGS}trojan-panel.log
|
|
|
+ ;;
|
|
|
+ 2)
|
|
|
+ log_file_path=${TROJAN_PANEL_CORE_LOGS}trojan-panel-core.log
|
|
|
+ ;;
|
|
|
+ 3)
|
|
|
break
|
|
|
+ ;;
|
|
|
+ *)
|
|
|
+ echo_content red "没有这个选项"
|
|
|
+ continue
|
|
|
+ ;;
|
|
|
+ esac
|
|
|
+
|
|
|
+ read -r -p "请输入查询的行数(默认:20): " select_log_query_line_type
|
|
|
+ [[ -z "${select_log_query_line_type}" ]] && select_log_query_line_type=20
|
|
|
+
|
|
|
+ if [[ -f ${log_file_path} ]]; then
|
|
|
+ echo_content skyBlue "日志文件如下:"
|
|
|
+ tail -n ${select_log_query_line_type} ${log_file_path}
|
|
|
+ else
|
|
|
+ echo_content red "不存在日志文件"
|
|
|
fi
|
|
|
done
|
|
|
-
|
|
|
- if [[ "${redis_host}" == "127.0.0.1" ]]; then
|
|
|
- docker exec trojan-panel-redis redis-cli -a "${redis_pass}" -e "flushall" &>/dev/null
|
|
|
- else
|
|
|
- docker exec trojan-panel-redis redis-cli -h "${redis_host}" -p ${redis_port} -a "${redis_pass}" -e "flushall" &>/dev/null
|
|
|
- fi
|
|
|
-
|
|
|
- echo_content skyBlue "---> Redis缓存刷新完成"
|
|
|
}
|
|
|
|
|
|
main() {
|
|
|
@@ -1012,8 +1050,9 @@ main() {
|
|
|
echo_content yellow "13. 卸载Redis"
|
|
|
echo_content yellow "14. 卸载全部Trojan Panel相关的容器"
|
|
|
echo_content green "\n=============================================================="
|
|
|
- echo_content yellow "15. 故障检测"
|
|
|
- echo_content yellow "16. 刷新Redis缓存"
|
|
|
+ echo_content yellow "15. 刷新Redis缓存"
|
|
|
+ echo_content yellow "16. 故障检测"
|
|
|
+ echo_content yellow "17. 日志查询"
|
|
|
read -r -p "请选择:" selectInstall_type
|
|
|
case ${selectInstall_type} in
|
|
|
1)
|
|
|
@@ -1065,10 +1104,13 @@ main() {
|
|
|
uninstall_all
|
|
|
;;
|
|
|
15)
|
|
|
- failure_testing
|
|
|
+ redis_flush_all
|
|
|
;;
|
|
|
16)
|
|
|
- redis_flush_all
|
|
|
+ failure_testing
|
|
|
+ ;;
|
|
|
+ 17)
|
|
|
+ log_query
|
|
|
;;
|
|
|
*)
|
|
|
echo_content red "没有这个选项"
|