mirror of
https://github.com/resmoio/kubernetes-event-exporter.git
synced 2026-08-24 01:06:22 +00:00
Log format support, fixes #52
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
logLevel: debug
|
||||
logFormat: json
|
||||
route:
|
||||
# Main route
|
||||
routes:
|
||||
|
||||
@@ -3,17 +3,16 @@ package main
|
||||
import (
|
||||
"context"
|
||||
"flag"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"os/signal"
|
||||
"syscall"
|
||||
"time"
|
||||
|
||||
"github.com/opsgenie/kubernetes-event-exporter/pkg/exporter"
|
||||
"github.com/opsgenie/kubernetes-event-exporter/pkg/kube"
|
||||
"github.com/rs/zerolog"
|
||||
"github.com/rs/zerolog/log"
|
||||
"gopkg.in/yaml.v2"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"os/signal"
|
||||
"syscall"
|
||||
"time"
|
||||
)
|
||||
|
||||
var (
|
||||
@@ -36,10 +35,7 @@ func main() {
|
||||
log.Fatal().Err(err).Msg("cannot parse config to YAML")
|
||||
}
|
||||
|
||||
log.Logger = log.With().Caller().Logger().Output(zerolog.ConsoleWriter{
|
||||
Out: os.Stdout,
|
||||
TimeFormat: time.RFC3339,
|
||||
}).Level(zerolog.DebugLevel)
|
||||
log.Logger = log.With().Caller().Logger().Level(zerolog.DebugLevel)
|
||||
|
||||
if cfg.LogLevel != "" {
|
||||
level, err := zerolog.ParseLevel(cfg.LogLevel)
|
||||
@@ -49,6 +45,18 @@ func main() {
|
||||
log.Logger = log.Logger.Level(level)
|
||||
}
|
||||
|
||||
if cfg.LogFormat == "json" {
|
||||
// Defaults to JSON already nothing to do
|
||||
} else if cfg.LogFormat == "" || cfg.LogFormat == "pretty" {
|
||||
log.Logger = log.Logger.Output(zerolog.ConsoleWriter{
|
||||
Out: os.Stdout,
|
||||
NoColor: false,
|
||||
TimeFormat: time.RFC3339,
|
||||
})
|
||||
} else {
|
||||
log.Fatal().Str("log_format", cfg.LogFormat).Msg("Unknown log format")
|
||||
}
|
||||
|
||||
kubeconfig, err := kube.GetKubernetesConfig()
|
||||
if err != nil {
|
||||
log.Fatal().Err(err).Msg("cannot get kubeconfig")
|
||||
|
||||
@@ -11,6 +11,7 @@ type Config struct {
|
||||
// TODO: There is currently a tight coupling with route and config, but not with receiver config and sink so
|
||||
// TODO: I am not sure what to do here.
|
||||
LogLevel string `yaml:"logLevel"`
|
||||
LogFormat string `yaml:"logFormat"`
|
||||
LeaderElection kube.LeaderElectionConfig `yaml:"leaderElection"`
|
||||
Route Route `yaml:"route"`
|
||||
Receivers []sinks.ReceiverConfig `yaml:"receivers"`
|
||||
|
||||
Reference in New Issue
Block a user