I am utilizing Go Logger and a third party library called lumberjack for file rotation:
Code Setting up the logger:
log.SetOutput(&lumberjack.Logger{
Filename: "/var/log/proxy.log",
MaxSize: 1000, // megabytes
MaxBackups: 3,
MaxAge: 1, // days
Compress: true, // disabled by default
})
The logs I have are sensitive, so here is a hypothetical example of the output of a log:
2018/02/05 19:00:08 "My log"
The logging schema for my company does not comply with having a timestamp in the front. I am gathering a different timestamp from other resources. I would like to remove the prefixed timestamp so that it only logs:
"My log"
I've looked through both links above, and looked through the source of the third party library lumberjack, and have not discovered a way to remove this. I saw the SetPrefix()
funtion in the go log documentation. I tried doing the following to try and cancel the timestamp prefix, but it failed:
log.SetPrefix("")
Is there any obvious or not so obvious way to remove the timestamp?
Use log.SetFlags to remove the timestamp.
log.SetFlags(log.Flags() &^ (log.Ldate | log.Ltime))
The above removes the timestamp from whatever flags might be set. To remove all flags, including the timestamp, use the following:
log.SetFlags(0)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With