my-log/config/types.go

35 lines
696 B
Go

package config
type Config struct {
Input Input
Outputs Outputs `toml:"output"`
Formatters Formatters
}
type Input struct {
Path string `env:"LOG_PATH"`
Recurse bool `env:"LOG_RECURSE"`
Ext string `env:"LOG_EXT"`
DotFolder bool `env:"LOG_DOT_FOLDER"`
}
type Outputs map[string]Output
type Output struct {
Enabled bool
Config map[string]any
}
type Stdout struct {
Formatter string `env:"LOG_STDOUT_FORMATTER" mapstructure:"formatter"`
}
type stdoutEnabled struct {
Enabled bool `env:"LOG_STDOUT_ENABLED"`
}
type Formatters map[string]map[string]any
type JsonFormat struct {
PrettyPrint bool `env:"LOG_JSON_PRETTY_PRINT" mapstructure:"pretty_print"`
}