Documentation
¶
Overview ¶
Package logrotate implements application-side log rotation.
logrotate supports the following modes:
- size: rotate files when they reach particular size
- time: rotate files after a period of time elapses
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DefaultFilenameFunc ¶
func DefaultFilenameFunc() string
Types ¶
type Options ¶
type Options struct { // Directory defines the directory where log files will be written to. // If the directory does not exist, it will be created. Directory string // MaximumFileSize defines the maximum size of each log file in bytes. // When MaximumFileSize == 0, no upper bound will be enforced. // No file will be greater than MaximumFileSize. A Write() which would // exceed MaximumFileSize will instead cause a new file to be created. // If a Write() is attempting to write more bytes than specified by // MaximumFileSize, the write will be skipped. MaximumFileSize int64 // MaximumLifetime defines the maximum amount of time a file will // be written to before a rotation occurs. // When MaximumLifetime == 0, no log rotation will occur. MaximumLifetime time.Duration // FileNameFunc specifies the name a new file will take. // FileNameFunc must ensure collisions in filenames do not occur. // Do not rely on timestamps to be unique, high throughput writes // may fall on the same timestamp. // Eg. // 2020-03-28_15-00-945-<random-hash>.log // When FileNameFunc is not specified, DefaultFilenameFunc will be used. FileNameFunc func() string // FlushAfterEveryWrite specifies whether the writer should flush // the buffer after every write. FlushAfterEveryWrite bool }
Options define configuration options for Writer
type Writer ¶
type Writer struct {
// contains filtered or unexported fields
}
Writer is a concurrency-safe writer with file rotation.
Click to show internal directories.
Click to hide internal directories.