hotgo/server/manifest/config/config.example.yaml

248 lines
12 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# hotgo配置
hotgo:
# debug开关开启后接口出现错误时会向前端输出堆栈信息默认为true
debug: true
# IP归属地解析方法可选cz88|whois默认为whois
ipMethod: "whois"
# 是否为演示系统 false|true
isDemo: false
# https
ssl:
switch: false # 是否开启https访问需要配置sslCrtPathsslKeyPath证书夹
crtPath: "storage/ssl/server.crt" # 证书路径
keyPath: "storage/ssl/server.key" # 密钥路径
# 全局请求日志
log:
switch: true # 日志开关默认为true
queue: true # 是否启用队列启用时需要配置队列信息默认为true
module: [ "admin", "api", "default" ] # 需要记录的模块
skipCode: [ ] # 不记录的状态码 ["0", "-1"]
# 系统日志用于在后台统计异常日志
serveLog:
switch: true # 日志开关默认为true
queue: true # 是否启用队列启用时需要配置队列信息默认为true
levelFormat: ["WARN", "ERRO", "FATA", "PANI"] # 需要记录的等级
# admin
admin:
superIds: [ 1,2,3 ] # 后台超管账号ID通过ID验证超管
superRoleKey: "super" # 超管角色唯一标识符通过角色验证超管
defaultPage: 10 # 列表分页默认加载数量
defaultPageSize: 1 # 列表分页默认加载页码
maxSortIncrement: 10 # 最大排序值增量
# gf配置
server:
address: ":8000"
openapiPath: "/api.json"
swaggerPath: "/swagger"
serverRoot: "resource/public"
DumpRouterMap: false
logPath: "logs/server"
ErrorStack: true # 当Server捕获到异常时是否记录堆栈信息到日志中默认为true
ErrorLogEnabled: true # 是否记录异常日志信息到日志中默认为true
errorLogPattern: "error/{Y-m-d}.log" # 异常错误日志文件格式默认为"error-{Ymd}.log"
accessLogEnabled: true # 是否记录访问日志默认为false
accessLogPattern: "access/{Y-m-d}.log" # 访问日志文件格式默认为"access-{Ymd}.log"
serverAgent: "HG HTTP Server"
# PProf配置
pprofEnabled: true # 是否开启PProf性能调试特性默认为false
pprofPattern: "/pprof" # 开启PProf时有效表示PProf特性的页面访问路径对当前Server绑定的所有域名有效
# Global logging.
logger:
level: "all"
flags: 44
path: "logs/logger" # 日志文件路径默认为空表示关闭仅输出到终端
file: "{Y-m-d}.log" # 日志文件格式默认为"{Y-m-d}.log"
stdoutColorDisabled: false # 关闭终端的颜色打印默认开启
writerColorEnable: false # 日志文件是否带上颜色默认false表示不带颜色
rotateExpire: "7d" # 日志保留天数
rotateBackupLimit: 2 # 最大备份数量
rotateBackupCompress: 9 # 日志文件压缩级别0-9,9最高
# 模板配置
viewer:
paths: "resource/template"
defaultFile: "index.html"
delimiters: ["@{", "}"]
homeLayout: "home/index.html"
# 内容设置
setting:
title: "HotGo"
keywords: "中后台解决方案,gf框架,vue3"
description: "hotgo 是一个基于 goframe2vue3vite2TypeScriptuinapp 的中后台解决方案,它可以帮助你快速搭建企业级中后台项目,相信不管是从新技术使用还是其他方面,都能帮助到你,持续更新中。"
# 路由配置
router:
# 后台
admin:
# 前缀
prefix: "/admin"
# 不需要验证登录的路由地址
exceptLogin: [
"/site/captcha", # 登录验证码
"/site/login", # 登录
"/site/ping", # ping
]
# 不需要验证权限的路由地址
exceptAuth: [
"/site/config", # 获取后台配置
"/member/info", # 登录用户信息
"/role/dynamic", # 获取动态路由
"/notice/pullMessages", # 拉取我的消息
"/notice/readAll", # 设置全部已读公告
"/notice/upRead", # 已读指定公告
"/dictData/option", # 单个数据字典
"/dictData/options", # 多个数据字典
"/provinces/select", # 动态省市区选项
"/provinces/cityLabel", # 动态解析省市区名称
]
# 接口
api:
# 前缀
prefix: "/api"
# 不需要验证登录的路由地址
exceptPath: []
# ws
ws:
# 前缀
prefix: "/socket"
# 不需要验证登录的路由地址
exceptLogin: []
# 前台页面
home:
# 前缀
prefix: "/home"
# 不需要验证登录的路由地址
exceptPath: []
#缓存
cache:
adapter: "file" # 缓存驱动方式支持memory|redis|file不填默认memory
fileDir: "./storage/cache" # 文件缓存路径adapter=file时必填
#JWT
jwt:
version: "1.0" # 版本号
expires: "864000" # 有效期单位
sign: "hotgo" # 秘钥考虑安全问题请修改默认值
multiPort: true # 是否允许多端登录默认为true
#消息队列
queue:
switch: true # 队列开关可选true|false默认为true
driver: "disk" # 队列驱动可选redis|rocketmq|kafka默认为disk
retry: 2 # 重试次数仅rocketmq|redis支持
groupName: "hotgo" # mq群组名称
#磁盘队列
disk:
path: "./storage/diskqueue" # 数据存放路径
batchSize: 100 # 每100条消息同步一次batchSize和batchTime满足其一就会同步一次
batchTime: 1 # 每1秒消息同步一次
segmentSize: 10485760 # 每个topic分片数据文件最大字节默认10M
segmentLimit: 3000 # 每个topic最大分片数据文件数量超出部分将会丢弃
redis:
address: "127.0.0.1:6379" # redis服务地址默认为127.0.0.1:6379
db: 2 # 指定redis库
pass: "" # redis密码
timeout: 0 # 队列超时时间(s) 0为永不超时当队列一直没有被消费到达超时时间则队列会被销毁
rocketmq:
address: "127.0.0.1:9876" # brocker地址+端口
logLevel: "all" # 系统日志级别可选all|close|debug|info|warn|error|fatal
kafka:
address: "127.0.0.1:9092" # kafka地址+端口
version: "2.0.0.0" # kafka专属配置默认2.0.0.0
randClient: true # 开启随机生成clientID可以实现启动多实例同时一起消费相同topic加速消费能力的特性默认为true
multiConsumer: true # 是否支持创建多个消费者
# Redis
redis:
default:
address: "127.0.0.1:6379"
db: "2"
pass: ""
idleTimeout: "20"
# Database.
database:
logger:
level: "all"
stdout: true
default:
link: "mysql:hotgo:hg123456.@tcp(127.0.0.1:3306)/hotgo?loc=Local&parseTime=true"
debug: true
Prefix: "hg_"
# 生成代码
hggen:
allowedIPs: ["127.0.0.1", "*"] # 白名单*代表所有只有允许的IP后台才能使用生成代码功能
selectDbs: [ "default" ] # 可选生成表的数据库配置名称支持多库
disableTables : ["hg_sys_gen_codes","hg_admin_role_casbin"] # 禁用的表禁用以后将不会在选择表中看到
delimiters: ["@{", "}"] # 模板引擎变量分隔符号
# 生成应用模型所有生成模板允许自定义可以参考default模板进行改造
application:
# CRUD模板
crud:
templates:
# 默认的主包模板
- group: "default" # 分组名称
isAddon: false # 是否为插件模板 falsetrue
masterPackage: "sys" # 主包名称需和controllerPathlogicPathinputPath保持关联
templatePath: "./resource/generate/default/curd" # 模板路径
apiPath: "./api/admin" # gfApi生成路径
controllerPath: "./internal/controller/admin/sys" # 控制器生成路径
logicPath : "./internal/logic/sys" # 主要业务生成路径
inputPath: "./internal/model/input/sysin" # 表单过滤器生成路径
routerPath : "./internal/router/genrouter" # 生成路由表路径
sqlPath : "./storage/data/generate" # 生成sql语句路径
webApiPath: "../web/src/api" # webApi生成路径
webViewsPath : "../web/src/views" # web页面生成路径
# 默认的插件包模板
- group: "addon" # 分组名称
isAddon: true # 是否为插件模板 falsetrue
masterPackage: "sys" # 主包名称需和controllerPathlogicPathinputPath保持关联
templatePath: "./resource/generate/default/curd" # 模板路径
apiPath: "./addons/{$name}/api/admin" # gfApi生成路径
controllerPath: "./addons/{$name}/controller/admin/sys" # 控制器生成路径
logicPath : "./addons/{$name}/logic/sys" # 主要业务生成路径
inputPath: "./addons/{$name}/model/input/sysin" # 表单过滤器生成路径
routerPath : "./addons/{$name}/router/genrouter" # 生成路由表路径
sqlPath : "./storage/data/generate/addons" # 生成sql语句路径
webApiPath: "../web/src/api/addons/{$name}" # webApi生成路径
webViewsPath : "../web/src/views/addons/{$name}" # web页面生成路径
# 关系树列表模板
tree:
templates:
- group: "default"
templatePath: "./resource/generate/default/tree"
# 消息队列模板
queue:
templates:
- group: "default"
templatePath: "./resource/generate/default/queue"
# 定时任务模板
cron:
templates:
- group: "default"
templatePath: "./resource/generate/default/cron"
# 生成插件模块通过后台创建新插件时使用的模板允许自定义可以参考default模板进行改造
addon:
srcPath: "./resource/generate/default/addon" # 生成模板路径
templatePath: "./resource/template/addons/{$name}" # 页面模板路径