EnvConfigLoader

Loads configuration from environment variables with SOUL_LOGGER_ prefix.

Supported environment variables:

  • SOUL_LOGGER_MODE: Application mode (development/production)

  • SOUL_LOGGER_LEVEL: Default log level (DEBUG/INFO/WARN/ERROR/FATAL)

  • SOUL_LOGGER_PATH: Log file output directory

  • SOUL_LOGGER_MAX_FILE_SIZE: Maximum log file size in bytes (e.g., 10485760 for 10MB)

  • SOUL_LOGGER_QUEUE_CAPACITY: Async queue capacity (default: mode-specific)

  • SOUL_LOGGER_ENABLE_CONSOLE: Enable console output (true/false)

  • SOUL_LOGGER_ENABLE_FILE: Enable file output (true/false)

  • SOUL_LOGGER_FORMAT: Log format (colorful_text/plain_text/json)

  • SOUL_LOGGER_ENABLE_MASKING: Enable sensitive data masking (true/false)

  • SOUL_LOGGER_ENABLE_INTROSPECTION: Enable introspection routes (true/false)

  • SOUL_LOGGER_ENABLE_LOGBACK: Use Logback for output (true/false)

  • SOUL_LOGGER_LOGBACK_CONFIG_PATH: Custom Logback configuration file path

Author

LesterE

Since

1.0.0

Types

Link copied to clipboard
data class EnvConfig(val mode: ApplicationMode? = null, val level: SoulLogger.Level? = null, val path: String? = null, val maxFileSize: Long? = null, val queueCapacity: Int? = null, val enableConsole: Boolean? = null, val enableFile: Boolean? = null, val format: String? = null, val enableMasking: Boolean? = null, val enableIntrospection: Boolean? = null, val enableLogback: Boolean? = null, val logbackConfigPath: String? = null)

Environment-based configuration that can override mode defaults.

Link copied to clipboard
data class MergedConfig(val mode: ApplicationMode, val level: SoulLogger.Level, val path: String, val maxFileSize: Long, val queueCapacity: Int, val enableConsole: Boolean, val enableFile: Boolean, val format: String, val enableMasking: Boolean, val enableIntrospection: Boolean, val enableLogback: Boolean, val logbackConfigPath: String?)

Merged configuration combining mode defaults and environment overrides.

Functions

Link copied to clipboard

Load configuration from environment variables.

Link copied to clipboard

Merge environment config with mode defaults. Environment variables take precedence over mode defaults.