Dumpers¶
Predefined Dumpers¶
Bro/Zeek log dumper.
-
zlogging.dumper.write(data, filename, format, *args, **kwargs)[source]¶ Write Bro/Zeek log file.
- Parameters
data (
IterableofModel) – Log records as anIterableofModelper 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
formatis 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 (
IterableofModel) – Log records as anIterableofModelper line.filename (PathLike[str]) – Log file name.
writer (
ASCIIWriter, optional) – Writer class.separator (
strorbytes, optional) – Field separator when writing log lines.empty_field (
bytesorstr, optional) – Placeholder for empty field.unset_field (
bytesorstr, optional) – Placeholder for unset field.set_separator (
bytesorstr, optional) – Separator forset/vectorfields.*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 (
IterableofModel) – Log records as anIterableofModelper 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 (
IterableofModel) – Log records as anIterableofModelper 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
formatis 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 (
IterableofModel) – Log records as anIterableofModelper line.writer (
ASCIIWriter, optional) – Writer class.separator (
strorbytes, optional) – Field separator when writing log lines.empty_field (
bytesorstr, optional) – Placeholder for empty field.unset_field (
bytesorstr, optional) – Placeholder for unset field.set_separator (
bytesorstr, optional) – Separator forset/vectorfields.*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 (
IterableofModel) – Log records as anIterableofModelper 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 (
IterableofModel) – Log records as anIterableofModelper 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
formatis 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 (
IterableofModel) – Log records as anIterableofModelper line.file (TextFile) – Log file object opened in text mode.
writer (
ASCIIWriter, optional) – Writer class.separator (
strorbytes, optional) – Field separator when writing log lines.empty_field (
bytesorstr, optional) – Placeholder for empty field.unset_field (
bytesorstr, optional) – Placeholder for unset field.set_separator (
bytesorstr, optional) – Separator forset/vectorfields.*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 (
IterableofModel) – Log records as anIterableofModelper 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.BaseWriterASCII 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 serialisedataas 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
dataas ASCII.
-
class
zlogging.dumper.JSONWriter[source]¶ Bases:
zlogging.dumper.BaseWriterJSON 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
dataas JSON.
-
Abstract Base Dumpers¶
-
class
zlogging.dumper.BaseWriter[source]¶ Bases:
objectBasic log writer.