func (e *Entry) Fields() []Field {
	if e.Context == nil {
		return nil
	}
	return fieldsFromContext(e)
}
Fields returns log fields binded with context
package ulog
import "golang.org/x/net/context"
type Adapter interface {
	Handle(Entry)
}
type AdapterFunc func(Entry)
func (f AdapterFunc) Handle(e Entry) {
	e.Context = withAddingCallDepth(e.Context, 1)
	f(e)
}
var defaultAdapter Adapter = AdapterFunc(func(Entry) {})
func currentAdapter(ctx context.Context) Adapter {
	if ctx == nil {
		return defaultAdapter
	}
	lc := adapterFromContext(ctx)
	if lc == nil {
		return defaultAdapter
	}
	return lc
}
func SetDefaultAdapter(a Adapter) {
	if a == nil {
		panic("passed adapter is nil")
	}
	defaultAdapter = a
}
type Field struct {
	Key   string
	Value interface{}
}
type Entry struct {
	context.Context
	Level   Level
	Message string
}
func (e *Entry) CallDepth() int {
	return CallDepthFromContext(e)
}