Add option to enable caller information in logger

Signed-off-by: stonezdj <stonezdj@gmail.com>
This commit is contained in:
stonezdj 2023-06-02 15:46:53 +08:00
parent cf87e8d07e
commit 2338ee4f25
3 changed files with 9 additions and 4 deletions

View file

@ -42,6 +42,9 @@ type Configuration struct {
// Hooks allows users to configure the log hooks, to enabling the
// sequent handling behavior, when defined levels of log message emit.
Hooks []LogHook `yaml:"hooks,omitempty"`
// ReportCaller allows user to configure the log to report the caller
ReportCaller bool `yaml:"reportcaller,omitempty"`
}
// Loglevel is the level at which registry operations are logged.

View file

@ -23,10 +23,11 @@ var configStruct = Configuration{
AccessLog struct {
Disabled bool `yaml:"disabled,omitempty"`
} `yaml:"accesslog,omitempty"`
Level Loglevel `yaml:"level,omitempty"`
Formatter string `yaml:"formatter,omitempty"`
Fields map[string]interface{} `yaml:"fields,omitempty"`
Hooks []LogHook `yaml:"hooks,omitempty"`
Level Loglevel `yaml:"level,omitempty"`
Formatter string `yaml:"formatter,omitempty"`
Fields map[string]interface{} `yaml:"fields,omitempty"`
Hooks []LogHook `yaml:"hooks,omitempty"`
ReportCaller bool `yaml:"reportcaller,omitempty"`
}{
Level: "info",
Fields: map[string]interface{}{"environment": "test"},

View file

@ -345,6 +345,7 @@ func configureReporting(app *handlers.App) http.Handler {
// configuration.
func configureLogging(ctx context.Context, config *configuration.Configuration) (context.Context, error) {
logrus.SetLevel(logLevel(config.Log.Level))
logrus.SetReportCaller(config.Log.ReportCaller)
formatter := config.Log.Formatter
if formatter == "" {