Skip to content

logrus-easy-formatter is package that allows to easily customize Logrus output format

License

Notifications You must be signed in to change notification settings

t-tomalak/logrus-easy-formatter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

status Go Report Card

Logrus Easy Formatter

Provided formatter allow to easily format Logrus log output Some inspiration taken from logrus-prefixed-formatter

Default output

When format options are not provided Formatter will output

[INFO]: 2006-01-02T15:04:05Z07:00 - Log message

Sample Usage

Sample usage using available option to format output

package main

import (
	"os"

	"github.com/sirupsen/logrus"
	"github.com/t-tomalak/logrus-easy-formatter"
)

func main() {
	logger := &logrus.Logger{
		Out:   os.Stderr,
		Level: logrus.DebugLevel,
		Formatter: &easy.Formatter{
			TimestampFormat: "2006-01-02 15:04:05",
			LogFormat:       "[%lvl%]: %time% - %msg%",
		},
	}

	logger.Printf("Log message")
}

Above sample will produce:

[INFO]: 27-02-2018 19:16:55 - Log message
Usage with custom fields

Package also allows to include custom fields and format them(for now only limited to strings)

package main

import (
	"os"

	"github.com/sirupsen/logrus"
	"github.com/t-tomalak/logrus-easy-formatter"
)

func main() {
	logger := &logrus.Logger{
		Out:   os.Stderr,
		Level: logrus.DebugLevel,
		Formatter: &easy.Formatter{
			LogFormat: "[%lvl%]: %time% - %msg% {%customField%}",
		},
	}

	logger.WithField("customField", "Sample value").Printf("Log message")
}

And after running will output

[INFO]: 27-02-2018 19:16:55 - Log message - {Sample value}

ToDo

  • Customizable timestamp formats
  • Customizable output formats
  • Add tests
  • Support for custom fields other then string
  • Tests against all characters

License

This project is under the MIT License. See the LICENSE file for the full license text.

About

logrus-easy-formatter is package that allows to easily customize Logrus output format

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages