logfile

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Sep 14, 2023 License: Apache-2.0 Imports: 13 Imported by: 0

README

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewFileHook

func NewFileHook(options logrus_mate.Options) (hook logrus.Hook, err error)

NewFileHook return a new logrus Hook

Types

type FileHook

type FileHook struct {
	W *FileLogWriter
}

FileHook wrapper file writer implement logrus.Hook

func (*FileHook) Fire

func (p *FileHook) Fire(entry *logrus.Entry) (err error)

Fire implement logrus.Hook#Fire.

func (*FileHook) Levels

func (p *FileHook) Levels() []logrus.Level

Levels implement logrus.Hook#Levels.

type FileLogConifg

type FileLogConifg struct {
	Filename string       `json:"filename"`
	Maxlines int          `json:"maxlines"`
	Maxsize  int          `json:"maxsize"`
	Daily    bool         `json:"daily"`
	Maxdays  int64        `json:"maxdays"`
	Rotate   bool         `json:"rotate"`
	Level    logrus.Level `json:"level"`
}

FileLogConifg for setting file path, rotate strategy

type FileLogWriter

type FileLogWriter struct {
	*log.Logger
	FileLogConifg
	// contains filtered or unexported fields
}

FileLogWriter implements LoggerInterface. It writes messages by lines limit, file size limit, or time frequency.

func NewFileWriter

func NewFileWriter(flag int) *FileLogWriter

NewFileWriter create a FileLogWriter returning as LoggerInterface.

func (*FileLogWriter) Destroy

func (w *FileLogWriter) Destroy()

Destroy file logger, close file writer.

func (*FileLogWriter) DoRotate

func (w *FileLogWriter) DoRotate() error

DoRotate means it need to write file in new file. new file name like xx.log.2013-01-01.2

func (*FileLogWriter) Flush

func (w *FileLogWriter) Flush()

Flush file logger. there are no buffering messages in file logger in memory. flush file means sync file from disk.

func (*FileLogWriter) Init

func (w *FileLogWriter) Init(conf FileLogConifg) (err error)

Init file logger.

func (*FileLogWriter) Write

func (w *FileLogWriter) Write(p []byte) (n int, err error)

Write to logger

func (*FileLogWriter) WriteMsg

func (w *FileLogWriter) WriteMsg(msg string, level logrus.Level) error

WriteMsg write logger message into file.

type MuxWriter

type MuxWriter struct {
	sync.Mutex
	// contains filtered or unexported fields
}

MuxWriter for an *os.File writer with locker.

func (*MuxWriter) SetFd

func (l *MuxWriter) SetFd(fd *os.File)

SetFd set os.File in writer.

func (*MuxWriter) Write

func (l *MuxWriter) Write(b []byte) (int, error)

Write to os.File.

Jump to

Keyboard shortcuts

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