Files
junhong_cmp_fiber/pkg/config/defaults/config.yaml
邹进 96771a204f
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Has been cancelled
feat: 卡流量改为日快照计量并统一停复机规则
卡流量计量(按名单灰度,默认 off):
- 新增卡日快照与切换水位表(000241),按通道上游流量重置日换算自然月、重置日防旧值
- 已切换的卡按月对账产生增量,无生效中套餐只结算不发事件;第一次切换写水位
- 已切换卡读数有效即判定通道阈值,卡表本月用量用快照覆盖,日流量读快照
- 配置 JUNHONG_TRAFFIC_CALC_MODE/CARDS、JUNHONG_TRAFFIC_FLOW_SNAPSHOT_ENABLED

停复机规则(总开关 JUNHONG_STOP_RESUME_UNIFIED_RULE_ENABLED,默认关闭):
- 复机不看停机原因,持通道阈值锁仍拒绝;暂停轮询的卡不自动停复机
- 通道新增实名管控 realname_control_enabled(000242,默认 0),开启后不区分行业卡与实名策略
- 实名管控从 0 改 1 需确认,修改并入通道更新审计

OpenSpec Change: rebuild-card-traffic-metering-and-stop-resume
2026-10-20 17:49:26 +09:00

172 lines
4.9 KiB
YAML
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.
# 默认配置文件(嵌入二进制)
# 敏感配置和必填配置为空,必须通过环境变量设置
# 环境变量格式:JUNHONG_{SECTION}_{KEY}
server:
address: ":3000"
read_timeout: "30s"
write_timeout: "30s"
shutdown_timeout: "30s"
prefork: false
# 数据库配置(必填项需通过环境变量设置)
database:
host: "" # 必填:JUNHONG_DATABASE_HOST
port: 5432
user: "" # 必填:JUNHONG_DATABASE_USER
password: "" # 必填:JUNHONG_DATABASE_PASSWORD(敏感)
dbname: "" # 必填:JUNHONG_DATABASE_DBNAME
sslmode: "disable"
max_open_conns: 25
max_idle_conns: 10
conn_max_lifetime: "5m"
# Redis 配置(必填项需通过环境变量设置)
redis:
address: "" # 必填:JUNHONG_REDIS_ADDRESS
port: 6379
password: "" # 可选:JUNHONG_REDIS_PASSWORD(敏感)
db: 0
pool_size: 10
min_idle_conns: 5
dial_timeout: "5s"
read_timeout: "3s"
write_timeout: "3s"
# 对象存储配置
storage:
provider: "s3"
temp_dir: "/tmp/junhong-storage"
s3:
endpoint: "" # 可选:JUNHONG_STORAGE_S3_ENDPOINT
region: "" # 可选:JUNHONG_STORAGE_S3_REGION
bucket: "" # 可选:JUNHONG_STORAGE_S3_BUCKET
access_key_id: "" # 可选:JUNHONG_STORAGE_S3_ACCESS_KEY_ID(敏感)
secret_access_key: "" # 可选:JUNHONG_STORAGE_S3_SECRET_ACCESS_KEY(敏感)
use_ssl: false
path_style: true
presign:
upload_expires: "15m"
download_expires: "24h"
# 日志配置
logging:
level: "info"
development: false
app_log:
filename: "/app/logs/app.log"
max_size: 100
max_backups: 3
max_age: 7
compress: true
access_log:
filename: "/app/logs/access.log"
max_size: 100
max_backups: 3
max_age: 7
compress: true
retention_log:
filename: "logs/audit-retention.log"
max_size: 100
max_backups: 3
max_age: 7
compress: true
# 任务队列配置
queue:
concurrency: 10
queues:
critical: 6
default: 3
low: 1
retry_max: 5
timeout: "10m"
# JWT 配置(必填项需通过环境变量设置)
jwt:
secret_key: "" # 必填:JUNHONG_JWT_SECRET_KEY(敏感)
token_duration: "24h"
access_token_ttl: "24h"
refresh_token_ttl: "168h"
# 中间件配置
middleware:
enable_rate_limiter: false
rate_limiter:
max: 100
expiration: "1m"
storage: "memory"
cors:
enabled: true
allow_origins: "*"
allow_methods: "GET,POST,PUT,PATCH,DELETE,OPTIONS"
allow_headers: "Origin,Content-Type,Accept,Authorization,X-Requested-With,X-Request-ID"
expose_headers: "Content-Length,X-Request-ID"
allow_credentials: false
max_age: 86400
# 客户端配置
client:
require_phone_binding: true # 是否要求个人客户绑定手机号
# 短信服务配置
sms:
gateway_url: "" # 可选:JUNHONG_SMS_GATEWAY_URL
username: "" # 可选:JUNHONG_SMS_USERNAME
password: "" # 可选:JUNHONG_SMS_PASSWORD(敏感)
signature: "" # 可选:JUNHONG_SMS_SIGNATURE
timeout: "10s"
# 默认超级管理员配置(可选)
default_admin:
username: ""
password: ""
phone: ""
# Gateway 服务配置
gateway:
base_url: "https://lplan.whjhft.com/openapi"
app_id: "60bgt1X8i7AvXqkd"
app_secret: "BZeQttaZQt0i73moF"
timeout: 60
# 轮询配置
polling:
verbose_log: false # 是否开启详细日志(环境变量:JUNHONG_POLLING_VERBOSE_LOG)
# 轮询自动触发配置
polling_auto_trigger:
enable_auto_trigger: true
auto_trigger_system_user_id: 1 # 暂用 SuperAdmin,生产环境建议创建专用平台账号并更新此值
# Worker 运行配置
worker:
role: "all"
instance_name: ""
polling_total_max_concurrency: 100
# 日留存只读演练验收通过前必须保持关闭
audit_retention_cleanup_enabled: false
# 审计归档、Integration 归档与日留存默认关闭,低峰期按单日推进
audit_archive_tasks_enabled: false
# 审批新旧入口切换配置
approval:
legacy_refund_manual_enabled: true
legacy_offline_recharge_pay_enabled: true
# 卡流量计量(日快照算法)切换配置;API 与全部 Worker 必须一致,改动后先停全部进程再一起启动
traffic_calc:
mode: "off" # off / gray / full(环境变量:JUNHONG_TRAFFIC_CALC_MODE)
cards: "" # 灰度名单,如 device:15276,iot_card:103154(环境变量:JUNHONG_TRAFFIC_CALC_CARDS)
flow_snapshot_enabled: true # 未切换卡写日快照(环境变量:JUNHONG_TRAFFIC_FLOW_SNAPSHOT_ENABLED)
# 停复机规则配置
stop_resume:
unified_rule_enabled: false # 停复机新规则总开关(环境变量:JUNHONG_STOP_RESUME_UNIFIED_RULE_ENABLED)
# 企业微信 Adapter 配置
wecom:
base_url: "https://qyapi.weixin.qq.com"
timeout: "10s"