tcproxy 0.1.0

A TCP proxy for PostgreSQL connections with SSH tunnel support and runtime target switching
proxy:
  listen_port: 5433
  listen_host: "127.0.0.1"
  max_connections: 1000

connection_management:
  health_check_interval_seconds: 30
  health_check_timeout_seconds: 5
  max_consecutive_failures: 3
  retry_delay_seconds: 5

targets:
  local:
    host: "localhost"
    port: 5432
    connection_pool:
      max_size: 10
      timeout_seconds: 30
    ssh: null
    
  production:
    host: "prod-db.example.com"
    port: 5432
    ssh:
      enabled: true
      host: "bastion.example.com"
      user: "dbuser"
      key_file: "/path/to/cert.pem"
      port: 22
      timeout_seconds: 30
      auto_reconnect: true
      reconnect_interval_seconds: 30
      max_reconnect_attempts: 5
      reconnect_backoff_multiplier: 2.0
    connection_pool:
      max_size: 20
      timeout_seconds: 60

  development:
    host: "dev-db.example.com"
    port: 5432
    ssh:
      enabled: false
      host: "dev-bastion.example.com"
      user: "devuser"
      key_file: "/path/to/dev-cert.pem"
      port: 22
      timeout_seconds: 30
    connection_pool:
      max_size: 5
      timeout_seconds: 30