server:
  port: ${liquidnet.info.port}
  tomcat:
    uri-encoding: UTF-8
  servlet:
    context-path: ${liquidnet.info.context}
# -----------------------------------------------------------
knife4j:
  production: ${liquidnet.knife4j.disable}
  basic:
    enable: true
    username: ${liquidnet.security.username}
    password: ${liquidnet.security.password}
# -----------------------------------------------------------
logging:
#  config: ${liquidnet.logfile.config}
  file:
    name: ${liquidnet.logfile.path}/${liquidnet.logfile.name}.log
    max-size: 200MB
  pattern:
    file: '%d{yyyy-MM-dd HH:mm:ss.SSS} [ %-5level] %thread [%logger{26}:%line] - %msg%n'
    console: '%d{yyyy-MM-dd HH:mm:ss.SSS} [ %-5level] %thread [%logger{26}:%line] - %msg%n'
    rolling-file-name: ${liquidnet.logfile.path}/${liquidnet.logfile.name}-%d{yyyy-MM-dd}.%i.log
  level:
    root: info
    #以下是为指定包设置日志级别
    com:
      liquidnet: ${liquidnet.logfile.level-root}
# -----------------------------------------------------------
eureka:
#  client:
#    register-with-eureka: true
#    fetch-registry: true
#    serviceUrl:
#      defaultZone: http://${liquidnet.security.username}:${liquidnet.security.password}@${liquidnet.eureka.host}/eureka-server/eureka
  instance:
    hostname: ${spring.cloud.client.ip-address}
    lease-expiration-duration-in-seconds: 15 #服务过期时间配置,超过这个时间没有接收到心跳EurekaServer就会将这个实例剔除
    lease-renewal-interval-in-seconds: 5 #服务刷新时间配置，每隔这个时间会主动心跳一次
    prefer-ip-address: true
    instance-id: ${spring.application.name}:${spring.cloud.client.ip-address}:${spring.application.instance_id:${server.port}}
# -----------------------------------------------------------
#actuator/info
info:
  app:
    name: ${liquidnet.info.name}
  company:
    name: lightnet.io
  build:
    groupId: '@project.groupId@'
    artifactId: '@project.artifactId@'
    version: '@project.version@'
# -----------------------------------------------------------
spring:
  application:
    name: ${liquidnet.info.name}
  profiles:
    include: common-service #这里加载management相关公共配置
  redis:
    database: ${liquidnet.redis.database}
    dbs: ${liquidnet.redis.dbs}
    port: ${liquidnet.redis.port}
    host: ${liquidnet.redis.host}
    password: ${liquidnet.redis.password}
    lettuce:
      pool:
        max-active: 8
        max-wait: -1
        max-idle: 8
        min-idle: 0
    redisson:
      singleServerConfig:
        address: redis://${liquidnet.redis.host}:${liquidnet.redis.port}
        password: ${liquidnet.redis.password}
        clientName: null
        database: 7 #选择使用哪个数据库0~15
        idleConnectionTimeout: 10000
        connectTimeout: 10000
        timeout: 3000
        retryAttempts: 3
        retryInterval: 1500
        subscriptionsPerConnection: 5
        subscriptionConnectionMinimumIdleSize: 1
        subscriptionConnectionPoolSize: 50
        connectionMinimumIdleSize: 32
        connectionPoolSize: 64
        dnsMonitoringInterval: 5000
      threads: 16
      nettyThreads: 32
      codec:
        class: "org.redisson.codec.JsonJacksonCodec"
      transportMode: "NIO"
#  data:
#    mongodb:
#      uri: mongodb://${liquidnet.mongodb.user}:${liquidnet.mongodb.pwd}@${liquidnet.mongodb.host}/?authSource=admin&maxPoolSize=2000&waitQueueMultiple=100
#      sslEnabled: ${liquidnet.mongodb.sslEnabled}
#      database: ${liquidnet.mongodb.database}
  datasource:
    name: ${liquidnet.mysql.database-name}
    url: jdbc:mysql://${liquidnet.mysql.urlHostAndPort}/${liquidnet.mysql.database-name}?serverTimezone=Asia/Shanghai&characterEncoding=utf-8&useSSL=false
    username: ${liquidnet.mysql.username}
    password: ${liquidnet.mysql.password}
#    type: org.apache.tomcat.jdbc.pool.DataSource
    driver-class-name: com.mysql.cj.jdbc.Driver
    hikari:
      maximum-pool-size: 16
      minimum-idle: 8
      connection-test-query: SELECT 1
# -----------------------------------------------------------

# -----------------------------------------------------------
