base/frameworks/logging/postprocessors/sftp.zeek¶
-
Log¶
This script defines a postprocessing function that can be applied
to a logging filter in order to automatically SFTP
a log stream (or a subset of it) to a remote host at configurable
rotation time intervals. Generally, to use this functionality
you must handle the zeek_init event and do the following
in your handler:
Create a new
Log::Filterrecord that defines a name/path, rotation interval, and set thepostprocessortoLog::sftp_postprocessor.Add the filter to a logging stream using
Log::add_filter.Add a table entry to
Log::sftp_destinationsfor the filter’s writer/path pair which defines a set ofLog::SFTPDestinationrecords.
- Namespace
Log
Summary¶
Redefinable Options¶
Default naming format for timestamps embedded into log filenames that use the SFTP rotator. |
State Variables¶
A table indexed by a particular log writer and filter path, that yields a set of remote destinations. |
Types¶
A container that describes the remote destination for the SFTP command, comprised of the username, host, and path at which to upload the file. |
Functions¶
Securely transfers the rotated log to all the remote hosts
defined in |
Detailed Interface¶
Redefinable Options¶
State Variables¶
-
Log::sftp_destinations¶ - Type
table[Log::Writer,string] ofset[Log::SFTPDestination]- Default
{}
A table indexed by a particular log writer and filter path, that yields a set of remote destinations. The
Log::sftp_postprocessorfunction queries this table upon log rotation and performs a secure transfer of the rotated log to each destination in the set. This table can be modified at run-time.
Types¶
-
Log::SFTPDestination¶ - Type
A container that describes the remote destination for the SFTP command, comprised of the username, host, and path at which to upload the file.
Functions¶
-
Log::sftp_postprocessor¶ - Type
function(info:Log::RotationInfo) :bool
Securely transfers the rotated log to all the remote hosts defined in
Log::sftp_destinationsand then deletes the local copy of the rotated log. It’s not active when reading from trace files.- Info
A record holding meta-information about the log file to be postprocessed.
- Returns
True if sftp system command was initiated or if no destination was configured for the log as described by info.