142 lines
4.1 KiB
YAML
142 lines
4.1 KiB
YAML
server:
|
||
port: 18080
|
||
shutdown: graceful
|
||
netty:
|
||
connection-timeout: 5s
|
||
error:
|
||
include-message: always
|
||
include-binding-errors: always
|
||
include-stacktrace: on-param
|
||
include-exception: true
|
||
|
||
proxy:
|
||
enabled: true
|
||
host: 127.0.0.1 # 容器内改为 host.docker.internal 或代理容器名
|
||
port: 6888 # 若是 socks 监听端口不同,请改为实际端口
|
||
type: socks # 关键:切换为 socks
|
||
applySystemProperties: true
|
||
applyProxySelector: false
|
||
trustAllCerts: true # 排障时可临时 true,生产请 false
|
||
|
||
spring:
|
||
application:
|
||
name: ai-novel-server
|
||
data:
|
||
mongodb:
|
||
uri: mongodb://localhost:27017/ainoval?
|
||
auto-index-creation: true
|
||
database: ainovel
|
||
authentication-database: admin
|
||
webflux:
|
||
base-path: /
|
||
lifecycle:
|
||
timeout-per-shutdown-phase: 30s
|
||
|
||
logging:
|
||
level:
|
||
root: INFO
|
||
com.ainovel: DEBUG
|
||
# 添加MongoDB查询日志配置
|
||
org.springframework.data.mongodb: WARN
|
||
com.ainovel.server.service.impl.ImportServiceImpl: DEBUG
|
||
com.ainovel.server.config.MongoQueryCounterAspect: WARN
|
||
org.springframework.data.mongodb.core.ReactiveMongoTemplate: WARN
|
||
org.springframework.data.mongodb.core.MongoTemplate: WARN
|
||
org.springframework.data.mongodb.repository.query: WARN
|
||
org.springframework.web: WARN
|
||
org.springframework.security: WARN
|
||
org.eclipse.angus.mail.smtp: DEBUG
|
||
reactor.netty: WARN
|
||
# MongoDB 映射调试日志 - 用于排查 MappingException
|
||
org.springframework.data.mongodb.core.convert: WARN
|
||
org.springframework.data.mongodb.core.mapping: WARN
|
||
org.springframework.data.mapping: WARN
|
||
org.springframework.data.mapping.model: WARN
|
||
# MongoDB Java Driver 调试(可选)
|
||
org.mongodb.driver: WARN
|
||
# MongoDB Event Listener - 关闭详细的文档内容日志
|
||
org.springframework.data.mongodb.core.mapping.event.LoggingEventListener: WARN
|
||
|
||
management:
|
||
endpoints:
|
||
web:
|
||
exposure:
|
||
include: health,info,metrics,prometheus,jmx
|
||
jmx:
|
||
exposure:
|
||
include: "*"
|
||
endpoint:
|
||
health:
|
||
show-details: always
|
||
jmx:
|
||
enabled: true
|
||
jmx:
|
||
enabled: true
|
||
# 更新过时的配置
|
||
prometheus:
|
||
metrics:
|
||
export:
|
||
enabled: true
|
||
tracing:
|
||
enabled: true
|
||
sampling:
|
||
probability: 1.0
|
||
exporter:
|
||
otlp:
|
||
enabled: true
|
||
endpoint: http://${OTLP_TRACES_HOST:localhost}:${OTLP_TRACES_PORT:11800}
|
||
metrics:
|
||
tags:
|
||
application: ${spring.application.name}
|
||
environment: dev
|
||
distribution:
|
||
percentiles-histogram:
|
||
"[tasks.execution.time]": true
|
||
"[http.server.requests]": true
|
||
percentiles:
|
||
"[tasks.execution.time]": [0.5, 0.95, 0.99]
|
||
"[http.server.requests]": [0.5, 0.95, 0.99]
|
||
slo:
|
||
"[tasks.execution.time]": [2000ms, 10000ms, 30000ms]
|
||
|
||
"[http.server.requests]": [100ms, 300ms, 1s, 3s, 5s]
|
||
|
||
# 自定义配置
|
||
ainovel:
|
||
security:
|
||
jwt:
|
||
# 为了兼容旧代码读取此键的场景,这里也统一引用同一个环境变量
|
||
secret-key: ${JWT_SECRET:aiNovelSecretKey12345678901234567890}
|
||
expiration-time: 86400000 # 24小时,单位毫秒
|
||
refresh-token-expiration: 604800000 # 7天,单位毫秒
|
||
performance:
|
||
virtual-threads:
|
||
enabled: true
|
||
monitoring:
|
||
enabled: true
|
||
testing:
|
||
security-disabled: true # 禁用安全验证,方便测试
|
||
# 添加MongoDB查询日志配置
|
||
mongodb:
|
||
logging:
|
||
enabled: true
|
||
query-level: DEBUG
|
||
result-count: true
|
||
|
||
# 禁用JWT验证,方便测试
|
||
security:
|
||
jwt:
|
||
disabled: false
|
||
|
||
# 统一 JwtServiceImpl 的读取来源(dev 环境)
|
||
jwt:
|
||
secret: ${JWT_SECRET:aiNovelSecretKey12345678901234567890}
|
||
expiration: 86400000
|
||
refresh-expiration: 604800000
|
||
|
||
# 显式固定开发环境的 Jasypt 加解密配置,避免被外部环境变量干扰
|
||
jasypt:
|
||
encryptor:
|
||
password: ${JASYPT_ENCRYPTOR_PASSWORD:${JASYPT_PASSWORD:MaliangAI_SecretKey_PleaseChangeThis_2025}}
|
||
algorithm: PBEWITHHMACSHA512ANDAES_256
|
||
iv-generator-classname: org.jasypt.iv.RandomIvGenerator |