Merge pull request #53 from suicidejack/master

Ability to completely disable colors when using the text formatter
This commit is contained in:
Simon Eskildsen 2014-08-15 00:06:46 +02:00
commit 736840a898
2 changed files with 5 additions and 3 deletions

View File

@ -295,7 +295,8 @@ The built-in logging formatters are:
* `logrus.TextFormatter`. Logs the event in colors if stdout is a tty, otherwise
without colors.
* *Note:* to force colored output when there is no TTY, set the `ForceColors`
field to `true`.
field to `true`. To force no colored output even if there is a TTY set the
`DisableColors` field to `true`
* `logrus.JSONFormatter`. Logs fields as JSON.
Third party logging formatters:

View File

@ -27,6 +27,7 @@ func miniTS() int {
type TextFormatter struct {
// Set to true to bypass checking for a TTY before outputting colors.
ForceColors bool
DisableColors bool
}
func (f *TextFormatter) Format(entry *Entry) ([]byte, error) {
@ -34,7 +35,7 @@ func (f *TextFormatter) Format(entry *Entry) ([]byte, error) {
prefixFieldClashes(entry)
if f.ForceColors || IsTerminal() {
if (f.ForceColors || IsTerminal()) && !f.DisableColors {
levelText := strings.ToUpper(entry.Data["level"].(string))[0:4]
levelColor := blue