; EasyMQ 配置文件
; 支持 INI、YAML、JSON 格式

[log]
; 日志级别: debug, info, warn, error
level = info
; 日志格式: text, json
format = text
; 日志输出: stdout, stderr, file
output = stdout
; 日志文件名（当output为file时使用）
filename = easymq.log
; 日志文件最大大小（MB）
max_size = 100
; 保留的旧日志文件数
max_backups = 3
; 保留旧日志文件的天数
max_age = 28
; 是否压缩旧日志文件
compress = true

[server]
; 服务器监听地址
host = 0.0.0.0
; HTTP服务端口
port = 9700
; 读取超时时间（秒）
read_timeout = 30
; 写入超时时间（秒）
write_timeout = 30
; 空闲超时时间（秒）
idle_timeout = 60
; 关闭超时时间（秒）
shutdown_timeout = 30
; 是否启用CORS
enable_cors = true

[storage]
; 存储类型: memory, badger
type = badger
; 存储路径
path = ./data
; 是否同步写入（确保消息持久化）
sync_writes = true
; 值大小阈值
value_threshold = 1048576
; 内存表大小
mem_table_size = 67108864
; 内存表数量
num_mem_tables = 5

[node]
; 节点ID（如果不设置会自动生成）
id =
; 节点主机地址
host = localhost
; 节点通信端口
port = 9701
; 广播地址
advertise_addr =
; 心跳间隔（秒）
heartbeat_interval = 5
; 心跳超时时间（秒）
heartbeat_timeout = 15
; 种子节点列表（逗号分隔）
seed_nodes =
; 是否启用集群模式
enable_cluster = false

[security]
; 是否启用认证
enable_auth = true
; JWT密钥（生产环境请修改！）
jwt_secret = easymq-secret-key-change-in-production-please
; JWT过期时间（秒）
jwt_expire = 86400
; 是否启用限流
enable_rate_limit = false
; 每秒请求数限制
rate_limit = 1000
; API密钥列表（逗号分隔）
api_keys =

[auth]
; 默认管理员用户名
admin_username = admin
; 默认管理员密码（明文，首次启动会加密存储到数据库）
admin_password = admin123
; 默认管理员角色
admin_role = admin
