config

package
v1.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 28, 2025 License: MIT Imports: 8 Imported by: 0

Documentation

Overview

Package config carga y gestiona la configuración de la aplicación. Proporciona un singleton de configuración que carga variables de entorno al inicio de la aplicación y las valida. Incluye configuración de caché (Valkey) y logging (Zerolog) con valores por defecto si no están definidas las variables de entorno.

Package config contiene funciones auxiliares para cargar y gestionar variables de entorno. Proporciona métodos para obtener variables de entorno con valores por defecto, localizar el archivo .env en la estructura del proyecto y cargar las configuraciones.

Package config contiene funciones de validación para la estructura de configuración.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CacheConfig

type CacheConfig struct {
	CacheHost     string // Host del servidor Valkey
	CachePort     int    // Puerto del servidor Valkey
	CacheUsername string // Usuario para autenticación en Valkey
	CachePassword string // Contraseña para autenticación en Valkey
	CacheDB       int    // Número de base de datos Valkey
	CacheTTL      int    // Tiempo de vida de los valores en caché (en minutos)
}

CacheConfig contiene la configuración para la conexión a Valkey (caché distribuido).

type Config

type Config struct {
	AppName string
	CacheConfig
	LogConfig
}

Config contiene la configuración principal de la aplicación.

func GetConfig

func GetConfig() (*Config, error)

GetConfig retorna la instancia singleton de configuración. Utiliza un patrón de sincronización (sync.Once) para garantizar que la configuración se cargue una única vez desde variables de entorno y se valide. Retorna error si la carga o validación falla.

func NewConfig

func NewConfig() *Config

NewConfig crea una nueva instancia de Config sin inicializar.

func (*Config) Logging

func (c *Config) Logging() zerolog.Logger

Logging retorna un logger configurado según el ambiente (development, staging, production). Utiliza la configuración global para inicializar zerolog con los parámetros apropiados.

type LogConfig

type LogConfig struct {
	LogAppName string // Nombre de la aplicación para los logs
	LogEnv     string // Entorno de ejecución (development, staging, production)
}

LogConfig contiene la configuración para el sistema de logging.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL