drytorch.trackers.logging

Module containing custom logging configurations for the ‘drytorch’ logger.

It defines and implements a formatter that formats log messages according to the levels defined in the INFO_LEVELS variable. By default, it prints to stream and does not propagate to the main root.

INFO_LEVELS

InfoLevels object for global settings.

Functions

disable_default_handler()

Disable the handler and filter of the local logger.

disable_propagation()

Revert the changes made by enable_propagation.

enable_default_handler(stream)

Set up the default logging configuration.

enable_propagation([deduplicate_stream])

Propagate to the root logger.

get_verbosity()

Get the verbosity level of the 'drytorch' logger.

set_formatter(style)

Set the formatter for the stream handler of the drytorch logger.

set_verbosity(level_no)

Set the verbosity level of the 'drytorch' logger.

Classes

BuiltinLogger()

Tracker that streams logging messages through the built-in logger.

DryTorchFilter()

Filter that excludes logs from 'drytorch'.

DryTorchFormatter()

Default formatter for the drytorch logger.

InfoLevels(internal, metrics, epoch, ...)

Dataclass that defines different levels of information for logging.

ProgressFormatter()

Formatter that dynamically overwrites metrics and epoch logs.

class BuiltinLogger[source]

Bases: Tracker

Tracker that streams logging messages through the built-in logger.

notify(event: Event) None[source]
notify(event: StartTrainingEvent) None
notify(event: EndTrainingEvent) None
notify(event: StartEpochEvent) None
notify(event: EndEpochEvent) None
notify(event: SaveModelEvent) None
notify(event: LoadModelEvent) None
notify(event: MetricEvent) None
notify(event: StartTestEvent) None
notify(event: EndTestEvent) None
notify(event: TerminatedTrainingEvent) None
notify(event: StartExperimentEvent) None
notify(event: StopExperimentEvent) None
notify(event: LearningRateEvent) None
notify(event: ModelRegistrationEvent) None
notify(event: ActorRegistrationEvent) None

Notify the tracker of an event.

Parameters:

event (Event) – the event to notify about.

Return type:

None

class DryTorchFilter[source]

Bases: Filter

Filter that excludes logs from ‘drytorch’.

Initialize.

filter(record: LogRecord) bool[source]

Filter logs propagated by the library logger.

Parameters:

record (LogRecord)

Return type:

bool

class DryTorchFormatter[source]

Bases: Formatter

Default formatter for the drytorch logger.

default_msec_format

format for milliseconds.

Type:

ClassVar[str]

Initialize.

format(record: LogRecord) str[source]

Format the log record.

Parameters:

record (LogRecord)

Return type:

str

class InfoLevels(internal: int, metrics: int, epoch: int, model_state: int, experiment: int, training: int, test: int)[source]

Bases: object

Dataclass that defines different levels of information for logging.

Parameters:
internal

level for internal logging messages.

Type:

int

metrics

level for metric reporting.

Type:

int

epoch

level for epoch-related messages.

Type:

int

model_state

level for model state changes.

Type:

int

experiment

level for experiment-related messages.

Type:

int

training

level for training-related messages.

Type:

int

test

level for test-related messages.

Type:

int

class ProgressFormatter[source]

Bases: DryTorchFormatter

Formatter that dynamically overwrites metrics and epoch logs.

Initialize.

disable_default_handler() None[source]

Disable the handler and filter of the local logger.

Return type:

None

disable_propagation() None[source]

Revert the changes made by enable_propagation.

Return type:

None

enable_default_handler(stream: SupportsWrite[str] = <_io.TextIOWrapper name='<stderr>' mode='w' encoding='utf-8'>) None[source]

Set up the default logging configuration.

Parameters:

stream (SupportsWrite[str])

Return type:

None

enable_propagation(deduplicate_stream: bool = True) None[source]

Propagate to the root logger.

Parameters:

deduplicate_stream (bool) – whether to remove local messages from the stream.

Return type:

None

get_verbosity() int[source]

Get the verbosity level of the ‘drytorch’ logger.

Return type:

int

set_formatter(style: Literal['drytorch', 'progress']) None[source]

Set the formatter for the stream handler of the drytorch logger.

Raises:

ValueError – if the style is not ‘drytorch’ or ‘progress’.

Parameters:

style (Literal['drytorch', 'progress'])

Return type:

None

set_verbosity(level_no: int)[source]

Set the verbosity level of the ‘drytorch’ logger.

Parameters:

level_no (int)