Dumpers¶
Predefined Dumpers¶
Bro/Zeek log dumper.
-
zlogging.dumper.
write
(data, filename, format, *args, **kwargs)[source]¶ Write Bro/Zeek log file.
- Parameters
data (
Iterable
ofModel
) – Log records as anIterable
ofModel
per line.filename (PathLike[str]) – Log file name.
format (
str
) – Log format.*args – See
write_json()
andwrite_ascii()
for more information.args (Any) –
kwargs (Any) –
- Keyword Arguments
**kwargs – See
write_json()
andwrite_ascii()
for more information.- Raises
WriterFormatError – If
format
is not supported.- Return type
-
zlogging.dumper.
write_ascii
(data, filename, writer=None, separator=None, empty_field=None, unset_field=None, set_separator=None, *args, **kwargs)[source]¶ Write ASCII log file.
- Parameters
data (
Iterable
ofModel
) – Log records as anIterable
ofModel
per line.filename (PathLike[str]) – Log file name.
writer (
ASCIIWriter
, optional) – Writer class.separator (
str
orbytes
, optional) – Field separator when writing log lines.empty_field (
bytes
orstr
, optional) – Placeholder for empty field.unset_field (
bytes
orstr
, optional) – Placeholder for unset field.set_separator (
bytes
orstr
, optional) – Separator forset
/vector
fields.*args – Variable length argument list.
args (Any) –
kwargs (Any) –
- Keyword Arguments
**kwargs – Arbitrary keyword arguments.
- Return type
-
zlogging.dumper.
write_json
(data, filename, writer=None, *args, **kwargs)[source]¶ Write JSON log file.
- Parameters
data (
Iterable
ofModel
) – Log records as anIterable
ofModel
per line.filename (PathLike[str]) – Log file name.
writer (
JSONWriter
, optional) – Writer class.*args – Variable length argument list.
args (Any) –
kwargs (Any) –
- Keyword Arguments
**kwargs – Arbitrary keyword arguments.
- Return type
-
zlogging.dumper.
dumps
(data, format, *args, **kwargs)[source]¶ Write Bro/Zeek log string.
- Parameters
data (
Iterable
ofModel
) – Log records as anIterable
ofModel
per line.format (
str
) – Log format.*args – See
dumps_json()
anddumps_ascii()
for more information.args (Any) –
kwargs (Any) –
- Keyword Arguments
**kwargs – See
dumps_json()
anddumps_ascii()
for more information.- Raises
WriterFormatError – If
format
is not supported.- Return type
-
zlogging.dumper.
dumps_ascii
(data=None, writer=None, separator=None, empty_field=None, unset_field=None, set_separator=None, *args, **kwargs)[source]¶ Write ASCII log string.
- Parameters
data (
Iterable
ofModel
) – Log records as anIterable
ofModel
per line.writer (
ASCIIWriter
, optional) – Writer class.separator (
str
orbytes
, optional) – Field separator when writing log lines.empty_field (
bytes
orstr
, optional) – Placeholder for empty field.unset_field (
bytes
orstr
, optional) – Placeholder for unset field.set_separator (
bytes
orstr
, optional) – Separator forset
/vector
fields.*args – Variable length argument list.
**kwargs – Arbitrary keyword arguments.
args (Any) –
kwargs (Any) –
- Return type
- Returns
The JSON log string.
-
zlogging.dumper.
dumps_json
(data=None, writer=None, *args, **kwargs)[source]¶ Write JSON log string.
- Parameters
data (
Iterable
ofModel
) – Log records as anIterable
ofModel
per line.writer (
JSONWriter
, optional) – Writer class.*args – Variable length argument list.
args (Any) –
kwargs (Any) –
- Keyword Arguments
**kwargs – Arbitrary keyword arguments.
- Return type
- Returns
The JSON log string.
-
zlogging.dumper.
dump
(data, file, format, *args, **kwargs)[source]¶ Write Bro/Zeek log file.
- Parameters
data (
Iterable
ofModel
) – Log records as anIterable
ofModel
per line.format (
str
) – Log format.file (TextFile) – Log file object opened in text mode.
*args – See
dump_json()
anddump_ascii()
for more information.args (Any) –
kwargs (Any) –
- Keyword Arguments
**kwargs – See
dump_json()
anddump_ascii()
for more information.- Raises
WriterFormatError – If
format
is not supported.- Return type
-
zlogging.dumper.
dump_ascii
(data, file, writer=None, separator=None, empty_field=None, unset_field=None, set_separator=None, *args, **kwargs)[source]¶ Write ASCII log file.
- Parameters
data (
Iterable
ofModel
) – Log records as anIterable
ofModel
per line.file (TextFile) – Log file object opened in text mode.
writer (
ASCIIWriter
, optional) – Writer class.separator (
str
orbytes
, optional) – Field separator when writing log lines.empty_field (
bytes
orstr
, optional) – Placeholder for empty field.unset_field (
bytes
orstr
, optional) – Placeholder for unset field.set_separator (
bytes
orstr
, optional) – Separator forset
/vector
fields.*args – Variable length argument list.
args (Any) –
kwargs (Any) –
- Keyword Arguments
**kwargs – Arbitrary keyword arguments.
- Return type
-
zlogging.dumper.
dump_json
(data, file, writer=None, *args, **kwargs)[source]¶ Write JSON log file.
- Parameters
data (
Iterable
ofModel
) – Log records as anIterable
ofModel
per line.file (TextFile) – Log file object opened in text mode.
writer (
JSONWriter
, optional) – Writer class.*args – Variable length argument list.
args (Any) –
kwargs (Any) –
- Keyword Arguments
**kwargs – Arbitrary keyword arguments.
- Return type
-
class
zlogging.dumper.
ASCIIWriter
(separator=None, empty_field=None, unset_field=None, set_separator=None)[source]¶ Bases:
zlogging.dumper.BaseWriter
ASCII log writer.
- Parameters
- Variables
separator (bytes) – Field separator when writing log lines.
str_separator (str) – Field separator when writing log lines.
empty_field (bytes) – Placeholder for empty field.
str_empty_field (str) – Placeholder for empty field.
unset_field (bytes) – Placeholder for unset field.
str_unset_field (str) – Placeholder for unset field.
set_separator (bytes) – Separator for set/list fields.
str_set_separator (str) – Separator for set/list fields.
-
write_line
(file, data, lineno=0)[source]¶ Write log line as one-line record.
- Args:
file: Log file object opened in text mode. data (
Model
): Log record. lineno: Line number of current line.- Returns:
The file offset after writing.
- Raises:
ASCIIWriterError
: If failed to serialisedata
as ASCII.
w
-
write_tail
(file)[source]¶ Write trailing fields of ASCII log file.
- Parameters
file (TextFile) – Log file object opened in text mode.
- Return type
- Returns
The file offset after writing.
-
dump_line
(data, lineno=0)[source]¶ Serialise one-line record to a log line.
- Parameters
- Return type
- Returns
The converted log string.
- Raises
ASCIIWriterError – If failed to serialise
data
as ASCII.
-
class
zlogging.dumper.
JSONWriter
[source]¶ Bases:
zlogging.dumper.BaseWriter
JSON log writer.
-
write_line
(file, data, lineno=0)[source]¶ Write log line as one-line record.
- Parameters
- Return type
- Returns
The file offset after writing.
- Raises
JSONWriterError – If failed to serialise
data
as JSON.
-
Abstract Base Dumpers¶
-
class
zlogging.dumper.
BaseWriter
[source]¶ Bases:
object
Basic log writer.