From c06d3225e50920c0d77b7d2c9b5a388286fe3c67 Mon Sep 17 00:00:00 2001 From: QRaimbault Date: Sun, 28 Jul 2019 21:45:19 +0200 Subject: [PATCH] New: Add StdErrorCritical to log errors with critical level --- README.md | 18 +++++++++++------- logger.go | 5 +++++ 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 1b34781..cf7d6e3 100644 --- a/README.md +++ b/README.md @@ -18,19 +18,23 @@ This package exports a Logger struct defined like this (you'll find an interface ```go package simplelogger +type LogExtraData map[string]interface{} + type Logger struct { formatter Formatter writer Writer + MinLevel LogLevel } type _ interface { - log(level LogLevel, message string, data map[string]interface{}) - Debug(message string, data map[string]interface{}) - Info(message string, data map[string]interface{}) - Warn(message string, data map[string]interface{}) - Error(message string, data map[string]interface{}) - Critical(message string, data map[string]interface{}) - StdError(err error, data map[string]interface{}) + Log(level LogLevel, message string, data LogExtraData) + Debug(message string, data LogExtraData) + Info(message string, data LogExtraData) + Warn(message string, data LogExtraData) + Error(message string, data LogExtraData) + Critical(message string, data LogExtraData) + StdErrorCritical(err error, data LogExtraData) + StdError(err error, data LogExtraData) } ``` diff --git a/logger.go b/logger.go index fe1fb21..d54d71d 100644 --- a/logger.go +++ b/logger.go @@ -63,6 +63,11 @@ func (logger Logger) Critical(message string, data LogExtraData) { logger.Log(CRITICAL, message, data) } +// StdErrorCritical handles logging of messages with the level Critical with objects of type 'error'. +func (logger Logger) StdErrorCritical(err error, data LogExtraData) { + logger.Log(CRITICAL, err.Error(), data) +} + // StdError handles logging objects of type 'error'. func (logger Logger) StdError(err error, data LogExtraData) { logger.Log(ERROR, err.Error(), data)