log4go

package module
v0.0.0-...-4be49e7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 18, 2016 License: BSD-3-Clause Imports: 14 Imported by: 4

README

log4go

Simple log library for Go language.

####Install

go get github.com/skoo87/log4go

####Usages Refer to examples

####Features

  • Output log to file, the file can be rotated by itself.
  • Output log to console.
  • Output log to remote server with syslog protocol.

####TODO

  1. syslog
  2. udp/tcp writer
  3. more of rules of log rotation
  4. custom the format of log

Documentation

Index

Constants

View Source
const (
	DEBUG = iota
	INFO
	WARNING
	ERROR
	FATAL
)

Variables

View Source
var (
	LEVEL_FLAGS = [...]string{"DEBUG", " INFO", " WARN", "ERROR", "FATAL"}
)

Functions

func Close

func Close()

func Debug

func Debug(fmt string, args ...interface{})

func Error

func Error(fmt string, args ...interface{})

func Fatal

func Fatal(fmt string, args ...interface{})

func Info

func Info(fmt string, args ...interface{})

func Register

func Register(w Writer)

func SetLayout

func SetLayout(layout string)

func SetLevel

func SetLevel(lvl int)

func SetupLogWithConf

func SetupLogWithConf(file string) (err error)

func Warn

func Warn(fmt string, args ...interface{})

Types

type ConfConsoleWriter

type ConfConsoleWriter struct {
	On    bool `json:"On"`
	Color bool `json:"Color"`
}

type ConfFileWriter

type ConfFileWriter struct {
	LogPath string `json:"LogPath"`
	On      bool   `json:"On"`
}

type ConsoleWriter

type ConsoleWriter struct {
	// contains filtered or unexported fields
}

func NewConsoleWriter

func NewConsoleWriter() *ConsoleWriter

func (*ConsoleWriter) Init

func (w *ConsoleWriter) Init() error

func (*ConsoleWriter) SetColor

func (w *ConsoleWriter) SetColor(c bool)

func (*ConsoleWriter) Write

func (w *ConsoleWriter) Write(r *Record) error

type FileWriter

type FileWriter struct {
	// contains filtered or unexported fields
}

func NewFileWriter

func NewFileWriter() *FileWriter

func (*FileWriter) Flush

func (w *FileWriter) Flush() error

func (*FileWriter) Init

func (w *FileWriter) Init() error

func (*FileWriter) Rotate

func (w *FileWriter) Rotate() error

func (*FileWriter) SetPathPattern

func (w *FileWriter) SetPathPattern(pattern string) error

func (*FileWriter) Write

func (w *FileWriter) Write(r *Record) error

type Flusher

type Flusher interface {
	Flush() error
}

type LogConfig

type LogConfig struct {
	Level string            `json:"LogLevel"`
	FW    ConfFileWriter    `json:"FileWriter"`
	CW    ConfConsoleWriter `json:"ConsoleWriter"`
}

type Logger

type Logger struct {
	// contains filtered or unexported fields
}

func NewLogger

func NewLogger() *Logger

func (*Logger) Close

func (l *Logger) Close()

func (*Logger) Debug

func (l *Logger) Debug(fmt string, args ...interface{})

func (*Logger) Error

func (l *Logger) Error(fmt string, args ...interface{})

func (*Logger) Fatal

func (l *Logger) Fatal(fmt string, args ...interface{})

func (*Logger) Info

func (l *Logger) Info(fmt string, args ...interface{})

func (*Logger) Register

func (l *Logger) Register(w Writer)

func (*Logger) SetLayout

func (l *Logger) SetLayout(layout string)

func (*Logger) SetLevel

func (l *Logger) SetLevel(lvl int)

func (*Logger) Warn

func (l *Logger) Warn(fmt string, args ...interface{})

type Record

type Record struct {
	// contains filtered or unexported fields
}

func (*Record) String

func (r *Record) String() string

type Rotater

type Rotater interface {
	Rotate() error
	SetPathPattern(string) error
}

type ShortRecord

type ShortRecord Record

func (*ShortRecord) String

func (r *ShortRecord) String() string

type SyslogWriter

type SyslogWriter struct {
	// contains filtered or unexported fields
}

func NewSyslogWriter

func NewSyslogWriter() *SyslogWriter

func (*SyslogWriter) Init

func (w *SyslogWriter) Init() (err error)

func (*SyslogWriter) SetAddr

func (w *SyslogWriter) SetAddr(addr string)

func (*SyslogWriter) SetNetwork

func (w *SyslogWriter) SetNetwork(network string)

func (*SyslogWriter) SetTag

func (w *SyslogWriter) SetTag(tag string)

func (*SyslogWriter) Write

func (w *SyslogWriter) Write(r *Record) (err error)

type Writer

type Writer interface {
	Init() error
	Write(*Record) error
}

Directories

Path Synopsis
examples

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL