pyuvm.uvm_reporting.uvm_report_server

Centralized SV-UVM style reporting server.

Module Contents

Classes

uvm_report_policy

End-of-test fail policy.

uvm_report_stats

Aggregated severities for the current test run.

_uvm_report_filter

Filter that normalizes severities and updates global counters.

_uvm_wrapped_formatter

Wrap rendered log lines without changing the underlying formatter layout.

uvm_report_server

Singleton server that emulates SV report_server/report_catcher behavior.

Data

UVM_INFO

UVM_WARNING

UVM_ERROR

UVM_FATAL

API

pyuvm.uvm_reporting.uvm_report_server.UVM_INFO

‘INFO’

pyuvm.uvm_reporting.uvm_report_server.UVM_WARNING

‘WARNING’

pyuvm.uvm_reporting.uvm_report_server.UVM_ERROR

‘ERROR’

pyuvm.uvm_reporting.uvm_report_server.UVM_FATAL

‘FATAL’

class pyuvm.uvm_reporting.uvm_report_server.uvm_report_policy

End-of-test fail policy.

fail_on_warning: bool

False

fail_on_error: bool

True

fail_on_fatal: bool

True

max_quit_count: int

1

class pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats

Aggregated severities for the current test run.

info_count: int

0

warning_count: int

0

error_count: int

0

fatal_count: int

0

error_quit_count: int

0

clear() None
total_fails(policy: pyuvm.uvm_reporting.uvm_report_server.uvm_report_policy) int
error_quit_reached(policy: pyuvm.uvm_reporting.uvm_report_server.uvm_report_policy) bool
class pyuvm.uvm_reporting.uvm_report_server._uvm_report_filter(manager: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server)

Bases: logging.Filter

Filter that normalizes severities and updates global counters.

Initialization

Initialize a filter.

Initialize with the name of the logger which, together with its children, will have its events allowed through the filter. If no name is specified, allow every event.

filter(record: logging.LogRecord) bool
class pyuvm.uvm_reporting.uvm_report_server._uvm_wrapped_formatter(base_formatter: logging.Formatter, max_chars: int)

Bases: logging.Formatter

Wrap rendered log lines without changing the underlying formatter layout.

Initialization

Initialize the formatter with specified format strings.

Initialize the formatter either with the specified format string, or a default as described above. Allow for specialized date formatting with the optional datefmt argument. If datefmt is omitted, you get an ISO8601-like (or RFC 3339-like) format.

Use a style parameter of ‘%’, ‘{’ or ‘$’ to specify that you want to use one of %-formatting, :meth:str.format ({}) formatting or :class:string.Template formatting in your format string.

.. versionchanged:: 3.2 Added the style parameter.

property base_formatter: logging.Formatter
_display_message(record: logging.LogRecord) str
format(record: logging.LogRecord) str
class pyuvm.uvm_reporting.uvm_report_server.uvm_report_server

Singleton server that emulates SV report_server/report_catcher behavior.

Initialization

_instance: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server | None

None

classmethod get() pyuvm.uvm_reporting.uvm_report_server.uvm_report_server
classmethod get_or_none() pyuvm.uvm_reporting.uvm_report_server.uvm_report_server | None
classmethod create(root_logger: logging.Logger | None = None, verbosity: int = 100, policy: pyuvm.uvm_reporting.uvm_report_server.uvm_report_policy | None = None, print_char_len: int = 300) pyuvm.uvm_reporting.uvm_report_server.uvm_report_server
property catcher: pyuvm.uvm_reporting.uvm_report_catcher.uvm_report_catcher
property verbosity: int
property policy: pyuvm.uvm_reporting.uvm_report_server.uvm_report_policy
get_stats() pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats
clear_counts() None
initialize(root_logger: logging.Logger | None = None, verbosity: int = 100, policy: pyuvm.uvm_reporting.uvm_report_server.uvm_report_policy | None = None, print_char_len: int = 300) None
shutdown() None
set_verbosity(verbosity: int) None
set_verbosity_hier(prefix: str, verbosity: int) None
add_change_sev(report_id: str, msg_regex: str, sev: Any) None
remove_change_sev(report_id: str, msg_regex: str = '') None
emit_uvm(severity: str, msg: str, report_id: str = '', verbosity: int = 100, logger: logging.Logger | None = None, stacklevel: int = 2) None
process_record(record: logging.LogRecord) None
assert_no_failures(context: str = '') None
failure_message(context: str = '') str | None
log_summary(logger: logging.Logger) None
log_final_status(logger: logging.Logger, context: str = '', prior_failure_msg: str | None = None) str | None

Log DV_TEST_STATUS and return terminal failure message if present.

_attach_filters() None
register_logger(log: logging.Logger | None) None
_effective_verbosity(logger_name: str) int
_apply_catcher(msg: str, severity: str, report_id: str = '') str
_normalize_severity(severity: Any) str
_severity_to_level(severity: str) int
_severity_from_level(level: int) str
_set_record_level(record: logging.LogRecord, level: int) None