2016-03-24 6 views
5

मैं गोलांग लॉग पैकेज से Logrus पर संक्रमण करने की कोशिश कर रहा हूं। मेरा मुद्दा लॉग संदेशों के टाइमस्टैम्प प्रारूप को कस्टमाइज़ करने के तरीके के आसपास है। डिफ़ॉल्ट शुरुआत से सेकंड का काउंटर है लेकिन मुझे "2016-03-24 17:10:15" प्रारूप चाहिए। मेरा सरल परीक्षण कोड है:लॉरस टाइमस्टैम्प स्वरूपण

package main 

import (
     "github.com/Sirupsen/logrus" 
) 

func main() { 
     customFormatter := new(logrus.TextFormatter) 
     customFormatter.TimestampFormat = "2006-01-02 15:04:05" 
     logrus.SetFormatter(customFormatter) 
     logrus.Info("Hello Walrus") 
} 

यह संकलित करता है और ठीक चलता है लेकिन टाइमस्टैम्प प्रारूप अपरिवर्तित है। क्या कोई इस बात की अंतर्दृष्टि प्रदान कर सकता है कि यह क्यों काम नहीं कर रहा है?

धन्यवाद

उत्तर

9

मेरा मानना ​​है कि आप जब यह अपने आप को एक TTY संलग्न के साथ चल रहा टाइमस्टैम्प सक्षम सक्षम करने के लिए सही करने के लिए निम्नलिखित क्षेत्र सेट करना चाहते हैं।

logrus.TextFormatter प्रलेखन से

:

package main 

import (
    "github.com/Sirupsen/logrus" 
) 

func main() { 
    customFormatter := new(logrus.TextFormatter) 
    customFormatter.TimestampFormat = "2006-01-02 15:04:05" 
    logrus.SetFormatter(customFormatter) 
    logrus.Info("Hello Walrus before FullTimestamp=true") 
    customFormatter.FullTimestamp = true 
    logrus.Info("Hello Walrus after FullTimestamp=true") 
} 

का उत्पादन:

$ go run main.go 
INFO[0000] Hello Walrus before FullTimestamp=true 
INFO[2016-03-24 20:18:56] Hello Walrus after FullTimestamp=true 

// Enable logging the full timestamp when a TTY is attached instead of just 
// the time passed since beginning of execution. 
FullTimestamp bool 

अपने प्रदान की उदाहरण ट्वीक

संबंधित मुद्दे