* redesign logger Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
		
			
				
	
	
		
			44 lines
		
	
	
		
			997 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			997 B
		
	
	
	
		
			Go
		
	
	
	
	
	
| // Package log provides a log interface
 | |
| package logger
 | |
| 
 | |
| var (
 | |
| 	// Default logger
 | |
| 	DefaultLogger Logger = NewHelper(NewLogger())
 | |
| )
 | |
| 
 | |
| // Logger is a generic logging interface
 | |
| type Logger interface {
 | |
| 	// Init initialises options
 | |
| 	Init(options ...Option) error
 | |
| 	// The Logger options
 | |
| 	Options() Options
 | |
| 	// Fields set fields to always be logged
 | |
| 	Fields(fields map[string]interface{}) Logger
 | |
| 	// Log writes a log entry
 | |
| 	Log(level Level, v ...interface{})
 | |
| 	// Logf writes a formatted log entry
 | |
| 	Logf(level Level, format string, v ...interface{})
 | |
| 	// String returns the name of logger
 | |
| 	String() string
 | |
| }
 | |
| 
 | |
| func Init(opts ...Option) error {
 | |
| 	return DefaultLogger.Init(opts...)
 | |
| }
 | |
| 
 | |
| func Fields(fields map[string]interface{}) Logger {
 | |
| 	return DefaultLogger.Fields(fields)
 | |
| }
 | |
| 
 | |
| func Log(level Level, v ...interface{}) {
 | |
| 	DefaultLogger.Log(level, v...)
 | |
| }
 | |
| 
 | |
| func Logf(level Level, format string, v ...interface{}) {
 | |
| 	DefaultLogger.Logf(level, format, v...)
 | |
| }
 | |
| 
 | |
| func String() string {
 | |
| 	return DefaultLogger.String()
 | |
| }
 |