Dumpers¶
Predefined Dumpers¶
Bro/Zeek log dumper.
-
class
zlogging.dumper.JSONWriter¶ Bases:
zlogging.dumper.BaseWriterJSON log writer.
-
property
format¶ str: Log file format.
-
write_file(file, data)¶ Write log file.
-
write_line(file, data, lineno=0)¶ Write log line as one-line record.
- Parameters
file (_io.TextIOWrapper) – Log file object opened in text mode.
data (
Model) – Log record.lineno (Optional[int]) – Line number of current line.
- Returns
The file offset after writing.
- Raises
JSONWriterError – If failed to serialise
dataas JSON.- Return type
int
-
dump_file(data)¶ Serialise records to a log line.
-
dump_line(data, lineno=0)¶ Serialise one-line record to a log line.
- Parameters
data (
Model) – Log record.lineno (Optional[int]) – Line number of current line.
- Returns
The converted log string.
- Raises
JSONWriterError – If failed to serialise
dataas JSON.- Return type
str
-
property
-
class
zlogging.dumper.ASCIIWriter(separator=None, empty_field=None, unset_field=None, set_separator=None)¶ Bases:
zlogging.dumper.BaseWriterASCII log writer.
- Parameters
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.
- 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.
-
property
format¶ str: Log file format.
-
write_file(file, data)¶ Write log file.
-
write_line(file, data, lineno=0)¶ Write log line as one-line record.
- Parameters
file (_io.TextIOWrapper) – Log file object opened in text mode.
data (
Model) – Log record.lineno (Optional[int]) – Line number of current line.
- Returns
The file offset after writing.
- Raises
ASCIIWriterError – If failed to serialise
dataas ASCII.- Return type
int
-
write_head(file, data=None)¶ Write header fields of ASCII log file.
- Parameters
file (_io.TextIOWrapper) – Log file object opened in text mode.
data (
Model, optional) – Log record.
- Returns
The file offset after writing.
- Return type
int
-
write_tail(file)¶ Write trailing fields of ASCII log file.
- Parameters
file (_io.TextIOWrapper) – Log file object opened in text mode.
- Returns
The file offset after writing.
- Return type
int
-
dump_file(data, name=None)¶ Serialise records to a log line.
-
dump_line(data, lineno=0)¶ Serialise one-line record to a log line.
- Parameters
data (
Model) – Log record.lineno (Optional[int]) – Line number of current line.
- Returns
The converted log string.
- Raises
ASCIIWriterError – If failed to serialise
dataas ASCII.- Return type
str
-
dump_head(data=None, name=None)¶ Serialise header fields of ASCII log file.
- Parameters
data (
Model, optional) – Log record.name (Optional[str]) – Log file name.
- Returns
The converted log string.
- Return type
str
-
dump_tail()¶ Serialise trailing fields of ASCII log file.
- Returns
The converted log string.
- Return type
str
-
zlogging.dumper.write_json(data, filename, writer=None, *args, **kwargs)¶ Write JSON log file.
- Parameters
data (
IterableofModel) – Log records as anIterableofModelper line.filename (os.PathLike) – Log file name.
writer (
JSONWriter, optional) – Writer class.*args – Variable length argument list.
**kwargs – Arbitrary keyword arguments.
-
zlogging.dumper.dump_json(data, file, writer=None, *args, **kwargs)¶ Write JSON log file.
- Parameters
data (
IterableofModel) – Log records as anIterableofModelper line.file (_io.TextIOWrapper) – Log file object opened in text mode.
writer (
JSONWriter, optional) – Writer class.*args – Variable length argument list.
**kwargs – Arbitrary keyword arguments.
-
zlogging.dumper.dumps_json(data=None, writer=None, *args, **kwargs)¶ Write JSON log string.
- Parameters
data (
IterableofModel) – Log records as anIterableofModelper line.writer (
JSONWriter, optional) – Writer class.*args – Variable length argument list.
**kwargs – Arbitrary keyword arguments.
- Returns
The JSON log string.
- Return type
str
-
zlogging.dumper.write_ascii(data, filename, writer=None, separator=None, empty_field=None, unset_field=None, set_separator=None, *args, **kwargs)¶ Write ASCII log file.
- Parameters
data (
IterableofModel) – Log records as anIterableofModelper line.filename (os.PathLike) – 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.
**kwargs – Arbitrary keyword arguments.
-
zlogging.dumper.dump_ascii(data, file, writer=None, separator=None, empty_field=None, unset_field=None, set_separator=None, *args, **kwargs)¶ Write ASCII log file.
- Parameters
data (
IterableofModel) – Log records as anIterableofModelper line.file (_io.TextIOWrapper) – 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.
**kwargs – Arbitrary keyword arguments.
-
zlogging.dumper.dumps_ascii(data=None, writer=None, separator=None, empty_field=None, unset_field=None, set_separator=None, *args, **kwargs)¶ 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.
- Returns
The JSON log string.
- Return type
str
-
zlogging.dumper.write(data, filename, format, *args, **kwargs)¶ Write Bro/Zeek log file.
- Parameters
data (
IterableofModel) – Log records as anIterableofModelper line.filename (os.PathLike) – Log file name.
format (str) – Log format.
*args – See
write_json()andwrite_ascii()for more information.**kwargs – See
write_json()andwrite_ascii()for more information.
- Raises
WriterFormatError – If
formatis not supported.
-
zlogging.dumper.dump(data, file, format, *args, **kwargs)¶ Write Bro/Zeek log file.
- Parameters
data (
IterableofModel) – Log records as anIterableofModelper line.format (str) – Log format.
file (_io.TextIOWrapper) – Log file object opened in text mode.
*args – See
dump_json()anddump_ascii()for more information.**kwargs – See
dump_json()anddump_ascii()for more information.
- Raises
WriterFormatError – If
formatis not supported.
-
zlogging.dumper.dumps(data, format, *args, **kwargs)¶ 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.**kwargs – See
dumps_json()anddumps_ascii()for more information.
- Raises
WriterFormatError – If
formatis not supported.
Abstract Base Dumpers¶
-
class
zlogging.dumper.BaseWriter¶ Bases:
objectBasic log writer.
-
abstract property
format¶ str: Log file format.
-
write(filename, data)¶ Write log file.
-
abstract
write_file(file, data)¶ Write log file.
-
abstract
write_line(file, data, lineno=0)¶ Write log line as one-line record.
- Parameters
file (_io.TextIOWrapper) – Log file object opened in text mode.
data (
Model) – Log record.lineno (Optional[int]) – Line number of current line.
- Returns
The file offset after writing.
- Return type
int
-
abstract
dump_file(data)¶ Serialise records to a log line.
-
abstract
dump_line(data, lineno=0)¶ Serialise one-line record to a log line.
- Parameters
data (
Model) – Log record.lineno (Optional[int]) – Line number of current line.
- Returns
The converted log string.
- Return type
str
-
dump(data, file)¶ Write log file.
-
abstract property