From 3b45a8d4cc4491e0a68a412937cb88306460b509 Mon Sep 17 00:00:00 2001 From: Darien Raymond Date: Tue, 19 Dec 2017 22:02:57 +0100 Subject: [PATCH] comments --- common/log/log.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/common/log/log.go b/common/log/log.go index 7843350ce..f7df099c6 100644 --- a/common/log/log.go +++ b/common/log/log.go @@ -7,10 +7,12 @@ import ( "v2ray.com/core/common/serial" ) +// Message is the interface for all log messages. type Message interface { String() string } +// Handler is the interface for log handler. type Handler interface { Handle(msg Message) } @@ -19,11 +21,13 @@ type noOpHandler byte func (noOpHandler) Handle(msg Message) {} +// GeneralMessage is a general log message that can contain all kind of content. type GeneralMessage struct { Severity Severity Content interface{} } +// String implements Message. func (m *GeneralMessage) String() string { return serial.Concat("[", m.Severity, "]: ", m.Content) } @@ -32,6 +36,7 @@ func (s Severity) SevererThan(another Severity) bool { return s <= another } +// Record writes a message into log stream. func Record(msg Message) { h := (*Handler)(atomic.LoadPointer(&logHandler)) (*h).Handle(msg) @@ -41,6 +46,7 @@ var ( logHandler unsafe.Pointer ) +// RegisterHandler register a new handler as current log handler. Previous registered handler will be discarded. func RegisterHandler(handler Handler) { if handler == nil { panic("Log handler is nil")