diff --git a/viewsh-module-iot/viewsh-module-iot-gateway/src/main/resources/application-prod.yaml b/viewsh-module-iot/viewsh-module-iot-gateway/src/main/resources/application-prod.yaml index 496fca1..a5381e4 100644 --- a/viewsh-module-iot/viewsh-module-iot-gateway/src/main/resources/application-prod.yaml +++ b/viewsh-module-iot/viewsh-module-iot-gateway/src/main/resources/application-prod.yaml @@ -1,22 +1,12 @@ --- #################### 注册中心 + 配置中心相关配置 #################### spring: - cloud: - nacos: - server-addr: ${NACOS_SERVER_ADDR:127.0.0.1:8848} - username: ${NACOS_USERNAME:} - password: ${NACOS_PASSWORD:} - discovery: - namespace: ${NACOS_NAMESPACE:} - group: ${NACOS_GROUP:DEFAULT_GROUP} - metadata: - version: 1.0.0 - config: - namespace: ${NACOS_NAMESPACE:} - group: ${NACOS_GROUP:DEFAULT_GROUP} + application: + name: iot-gateway-server + profiles: + active: prod ---- #################### Redis 配置 #################### -spring: + # Redis 配置 data: redis: host: ${REDIS_HOST:127.0.0.1} @@ -24,17 +14,13 @@ spring: database: ${REDIS_DATABASE:0} password: ${REDIS_PASSWORD:} timeout: ${REDIS_TIMEOUT:30000ms} - lettuce: - pool: - max-active: 8 - max-wait: -1ms - max-idle: 8 - min-idle: 0 ---- #################### MQ 消息队列相关配置 #################### +--- #################### 消息队列相关 #################### +# rocketmq 配置项,对应 RocketMQProperties 配置类 rocketmq: name-server: ${ROCKETMQ_NAMESRV_ADDR:127.0.0.1:9876} + # Producer 配置项 producer: group: ${spring.application.name}_PRODUCER @@ -53,7 +39,6 @@ viewsh: url: ${IOT_RPC_URL:http://127.0.0.1:48091} connect-timeout: ${IOT_RPC_CONNECT_TIMEOUT:30s} read-timeout: ${IOT_RPC_READ_TIMEOUT:30s} - # 设备 Token 配置 token: secret: ${IOT_TOKEN_SECRET:viewshIotGatewayTokenSecret123456789} @@ -61,12 +46,15 @@ viewsh: # 协议配置 protocol: - # HTTP 协议配置 + # ==================================== + # 针对引入的 HTTP 组件的配置 + # ==================================== http: enabled: ${IOT_HTTP_ENABLED:true} server-port: ${IOT_HTTP_PORT:8092} - - # EMQX 协议配置 + # ==================================== + # 针对引入的 EMQX 组件的配置 + # ==================================== emqx: enabled: ${IOT_EMQX_ENABLED:false} http-port: ${IOT_EMQX_HTTP_PORT:8090} @@ -82,20 +70,25 @@ viewsh: keep-alive-interval-seconds: 60 max-inflight-queue: 10000 connect-timeout-seconds: 10 - trust-all: false # 生产环境必须为 false + # 是否信任所有 SSL 证书 (默认: false)。警告:生产环境必须为 false! + # 仅在开发环境或内网测试时,如果使用了自签名证书,可以临时设置为 true + trust-all: ${IOT_EMQX_TRUST_ALL:false} + # 遗嘱消息配置 (用于网关异常下线时通知其他系统) will: - enabled: true + enabled: ${IOT_EMQX_WILL_ENABLED:true} topic: "gateway/status/${viewsh.iot.gateway.emqx.mqtt-client-id}" payload: "offline" qos: 1 retain: true + # 高级 SSL/TLS 配置 (当 trust-all: false 且 mqtt-ssl: true 时生效) ssl-options: key-store-path: ${IOT_EMQX_SSL_KEYSTORE_PATH:classpath:certs/client.jks} - key-store-password: ${IOT_EMQX_SSL_KEYSTORE_PASSWORD:} + key-store-password: ${IOT_EMQX_SSL_KEYSTORE_PASSWORD:your-keystore-password} trust-store-path: ${IOT_EMQX_SSL_TRUSTSTORE_PATH:classpath:certs/trust.jks} - trust-store-password: ${IOT_EMQX_SSL_TRUSTSTORE_PASSWORD:} - - # TCP 协议配置 + trust-store-password: ${IOT_EMQX_SSL_TRUSTSTORE_PASSWORD:your-truststore-password} + # ==================================== + # 针对引入的 TCP 组件的配置 + # ==================================== tcp: enabled: ${IOT_TCP_ENABLED:false} port: ${IOT_TCP_PORT:8091} @@ -104,8 +97,9 @@ viewsh: ssl-enabled: ${IOT_TCP_SSL_ENABLED:false} ssl-cert-path: ${IOT_TCP_SSL_CERT_PATH:classpath:certs/client.jks} ssl-key-path: ${IOT_TCP_SSL_KEY_PATH:classpath:certs/client.jks} - - # MQTT 协议配置 + # ==================================== + # 针对引入的 MQTT 组件的配置 + # ==================================== mqtt: enabled: ${IOT_MQTT_ENABLED:true} port: ${IOT_MQTT_PORT:1883} @@ -113,37 +107,26 @@ viewsh: connect-timeout-seconds: ${IOT_MQTT_CONNECT_TIMEOUT:60} ssl-enabled: ${IOT_MQTT_SSL_ENABLED:false} ---- #################### 监控相关配置 #################### - -management: - endpoints: - web: - base-path: /actuator - exposure: - include: '*' - -spring: - boot: - admin: - client: - instance: - service-host-type: IP - username: ${SPRING_BOOT_ADMIN_USERNAME:admin} - password: ${SPRING_BOOT_ADMIN_PASSWORD:admin} - --- #################### 日志相关配置 #################### +# 基础日志配置 logging: + file: + name: ${LOG_FILE_PATH:/app/logs}/${spring.application.name}.log level: - root: INFO + # 应用基础日志级别 com.viewsh.module.iot.gateway: ${LOG_LEVEL_IOT_GATEWAY:INFO} org.springframework.boot: INFO + # RocketMQ 日志 org.apache.rocketmq: WARN + # MQTT 客户端日志 + # io.vertx.mqtt: DEBUG + # 生产环境日志 com.viewsh.module.iot.gateway.protocol.emqx: ${LOG_LEVEL_EMQX:INFO} com.viewsh.module.iot.gateway.protocol.http: ${LOG_LEVEL_HTTP:INFO} com.viewsh.module.iot.gateway.protocol.mqtt: ${LOG_LEVEL_MQTT:INFO} - file: - name: ${LOG_FILE_PATH:/app/logs}/${spring.application.name}.log + # 根日志级别 + root: INFO debug: false