server: port: "8080" mode: "debug" # debug, release, test read_timeout: 60 write_timeout: 60 database: postgres: host: "localhost" port: "5432" user: "postgres" password: "postgres" dbname: "iot_base_station" max_open_conns: 25 max_idle_conns: 5 conn_max_lifetime: 300 influxdb: url: "http://localhost:8086" token: "influxdb-token" org: "iot-org" bucket: "iot-data" timeout: 10 redis: host: "localhost" port: "6379" password: "" db: 0 pool_size: 10 nats: url: "nats://localhost:4222" subject_prefix: "iot" mqtt: broker: "tcp://localhost:1883" client_id: "iot-gateway" username: "" password: "" keep_alive: 60 qos: 1 coap: address: ":5683" path: "/iot" max_message_size: 1024 lora: server_url: "http://localhost:8080" application_id: "iot-app" access_key: "lora-access-key" jwt: secret: "iot-jwt-secret" expire: 86400 # 24 hours alert: enabled: true check_interval: 30 # seconds max_alerts_per_device: 10 suppression_window: 300 # seconds notification: email: enabled: false smtp_host: "smtp.example.com" smtp_port: 587 username: "iot@example.com" password: "email-password" from: "iot@example.com" webhook: enabled: true url: "http://localhost:8081/webhook" timeout: 10 monitoring: enabled: true metrics_path: "/metrics" health_check_path: "/health" logging: level: "info" output: "logs/app.log" max_size: 100 # MB max_backups: 3 max_age: 28 # days