Documentation
¶
Overview ¶
Package tailer provides a class that is responsible for tailing log files and extracting new log lines to be passed into the virtual machines.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type File ¶
type File struct {
Name string // Given name for the file (possibly relative, used for displau)
Pathname string // Full absolute path of the file used internally
// contains filtered or unexported fields
}
File provides an abstraction over files and named pipes being tailed by `mtail`.
func NewFile ¶
func NewFile(fs afero.Fs, pathname string, lines chan<- *logline.LogLine, seekToStart bool) (*File, error)
NewFile returns a new File named by the given pathname. `seenBefore` indicates that mtail believes it's seen this pathname before, indicating we should retry on error to open the file. `seekToStart` indicates that the file should be tailed from offset 0, not EOF; the latter is true for rotated files and for files opened when mtail is in oneshot mode.
func (*File) Follow ¶
Follow reads from the file until EOF. It tracks log rotations (i.e new inode or device).
type Tailer ¶
type Tailer struct {
// contains filtered or unexported fields
}
Tailer receives notification of changes from a Watcher and extracts new log lines from files. It also handles new log file creation events and log rotations.
func New ¶
func New(lines chan<- *logline.LogLine, fs afero.Fs, w watcher.Watcher, options ...func(*Tailer) error) (*Tailer, error)
New creates a new Tailer.
func (*Tailer) AddPattern ¶
AddPattern adds a pattern to the list of patterns to filter filenames against.
func (*Tailer) SetOption ¶
SetOption takes one or more option functions and applies them in order to Tailer.
func (*Tailer) TailPattern ¶
TailPattern registers a pattern to be tailed. If pattern is a plain file then it is watched for updates and opened. If pattern is a glob, then all paths that match the glob are opened and watched, and the directories containing those matches, if any, are watched.