spring:
  application:
    name: snp-connection-monitoring

  # PostgreSQL Database Configuration
  datasource:
    url: jdbc:postgresql://211.208.115.83:5432/snp_connection
    username: snp_admin
    password: snp#8932
    driver-class-name: org.postgresql.Driver
    hikari:
      maximum-pool-size: 10
      minimum-idle: 5
      connection-timeout: 30000

  # JPA Configuration
  jpa:
    hibernate:
      ddl-auto: update
    show-sql: false
    properties:
      hibernate:
        dialect: org.hibernate.dialect.PostgreSQLDialect
        format_sql: true
        default_schema: common

# Server Configuration
server:
  port: 8042
  servlet:
    context-path: /snp-connection

# Actuator Configuration
management:
  endpoints:
    web:
      exposure:
        include: health,info,metrics
  endpoint:
    health:
      show-details: always

# Springdoc / Swagger UI
springdoc:
  swagger-ui:
    deep-linking: true
    display-request-duration: true

# Logging Configuration
logging:
  level:
    root: INFO
    com.gcsc.connection: DEBUG

# Custom Application Properties
app:
  environment: dev
  heartbeat:
    default-interval-seconds: 60
    timeout-seconds: 5
  jwt:
    secret: c25wLWNvbm5lY3Rpb24tbW9uaXRvcmluZy1qd3Qtc2VjcmV0LWtleS0yMDI2
    access-token-expiration: 3600000
    refresh-token-expiration: 604800000
  apikey:
    aes-secret-key: wg9XEbb+7HpqfI3Hs/iDT2JAlay+71+R9PXad35W04c=
  retention:
    request-log-days: 90
    health-log-days: 90
  partition:
    enabled: true
    advance-months: 2
