# {py:mod}`pyuvm.uvm_reporting.uvm_report_server` ```{py:module} pyuvm.uvm_reporting.uvm_report_server ``` ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`uvm_report_policy ` - ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_policy :summary: ``` * - {py:obj}`uvm_report_stats ` - ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats :summary: ``` * - {py:obj}`_uvm_report_filter ` - ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server._uvm_report_filter :summary: ``` * - {py:obj}`_uvm_wrapped_formatter ` - ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server._uvm_wrapped_formatter :summary: ``` * - {py:obj}`uvm_report_server ` - ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`UVM_INFO ` - ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.UVM_INFO :summary: ``` * - {py:obj}`UVM_WARNING ` - ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.UVM_WARNING :summary: ``` * - {py:obj}`UVM_ERROR ` - ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.UVM_ERROR :summary: ``` * - {py:obj}`UVM_FATAL ` - ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.UVM_FATAL :summary: ``` ```` ### API ````{py:data} UVM_INFO :canonical: pyuvm.uvm_reporting.uvm_report_server.UVM_INFO :value: > 'INFO' ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.UVM_INFO ``` ```` ````{py:data} UVM_WARNING :canonical: pyuvm.uvm_reporting.uvm_report_server.UVM_WARNING :value: > 'WARNING' ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.UVM_WARNING ``` ```` ````{py:data} UVM_ERROR :canonical: pyuvm.uvm_reporting.uvm_report_server.UVM_ERROR :value: > 'ERROR' ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.UVM_ERROR ``` ```` ````{py:data} UVM_FATAL :canonical: pyuvm.uvm_reporting.uvm_report_server.UVM_FATAL :value: > 'FATAL' ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.UVM_FATAL ``` ```` `````{py:class} uvm_report_policy :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_policy ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_policy ``` ````{py:attribute} fail_on_warning :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_policy.fail_on_warning :type: bool :value: > False ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_policy.fail_on_warning ``` ```` ````{py:attribute} fail_on_error :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_policy.fail_on_error :type: bool :value: > True ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_policy.fail_on_error ``` ```` ````{py:attribute} fail_on_fatal :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_policy.fail_on_fatal :type: bool :value: > True ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_policy.fail_on_fatal ``` ```` ````{py:attribute} max_quit_count :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_policy.max_quit_count :type: int :value: > 1 ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_policy.max_quit_count ``` ```` ````` `````{py:class} uvm_report_stats :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats ``` ````{py:attribute} info_count :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats.info_count :type: int :value: > 0 ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats.info_count ``` ```` ````{py:attribute} warning_count :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats.warning_count :type: int :value: > 0 ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats.warning_count ``` ```` ````{py:attribute} error_count :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats.error_count :type: int :value: > 0 ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats.error_count ``` ```` ````{py:attribute} fatal_count :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats.fatal_count :type: int :value: > 0 ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats.fatal_count ``` ```` ````{py:attribute} error_quit_count :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats.error_quit_count :type: int :value: > 0 ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats.error_quit_count ``` ```` ````{py:method} clear() -> None :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats.clear ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats.clear ``` ```` ````{py:method} total_fails(policy: pyuvm.uvm_reporting.uvm_report_server.uvm_report_policy) -> int :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats.total_fails ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats.total_fails ``` ```` ````{py:method} error_quit_reached(policy: pyuvm.uvm_reporting.uvm_report_server.uvm_report_policy) -> bool :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats.error_quit_reached ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats.error_quit_reached ``` ```` ````` `````{py:class} _uvm_report_filter(manager: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server) :canonical: pyuvm.uvm_reporting.uvm_report_server._uvm_report_filter Bases: {py:obj}`logging.Filter` ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server._uvm_report_filter ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server._uvm_report_filter.__init__ ``` ````{py:method} filter(record: logging.LogRecord) -> bool :canonical: pyuvm.uvm_reporting.uvm_report_server._uvm_report_filter.filter ```` ````` `````{py:class} _uvm_wrapped_formatter(base_formatter: logging.Formatter, max_chars: int) :canonical: pyuvm.uvm_reporting.uvm_report_server._uvm_wrapped_formatter Bases: {py:obj}`logging.Formatter` ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server._uvm_wrapped_formatter ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server._uvm_wrapped_formatter.__init__ ``` ````{py:property} base_formatter :canonical: pyuvm.uvm_reporting.uvm_report_server._uvm_wrapped_formatter.base_formatter :type: logging.Formatter ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server._uvm_wrapped_formatter.base_formatter ``` ```` ````{py:method} _display_message(record: logging.LogRecord) -> str :canonical: pyuvm.uvm_reporting.uvm_report_server._uvm_wrapped_formatter._display_message ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server._uvm_wrapped_formatter._display_message ``` ```` ````{py:method} format(record: logging.LogRecord) -> str :canonical: pyuvm.uvm_reporting.uvm_report_server._uvm_wrapped_formatter.format ```` ````` `````{py:class} uvm_report_server() :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.__init__ ``` ````{py:attribute} _instance :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server._instance :type: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server | None :value: > None ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server._instance ``` ```` ````{py:method} get() -> pyuvm.uvm_reporting.uvm_report_server.uvm_report_server :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.get :classmethod: ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.get ``` ```` ````{py:method} get_or_none() -> pyuvm.uvm_reporting.uvm_report_server.uvm_report_server | None :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.get_or_none :classmethod: ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.get_or_none ``` ```` ````{py:method} 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 :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.create :classmethod: ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.create ``` ```` ````{py:property} catcher :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.catcher :type: pyuvm.uvm_reporting.uvm_report_catcher.uvm_report_catcher ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.catcher ``` ```` ````{py:property} verbosity :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.verbosity :type: int ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.verbosity ``` ```` ````{py:property} policy :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.policy :type: pyuvm.uvm_reporting.uvm_report_server.uvm_report_policy ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.policy ``` ```` ````{py:method} get_stats() -> pyuvm.uvm_reporting.uvm_report_server.uvm_report_stats :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.get_stats ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.get_stats ``` ```` ````{py:method} clear_counts() -> None :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.clear_counts ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.clear_counts ``` ```` ````{py:method} 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 :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.initialize ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.initialize ``` ```` ````{py:method} shutdown() -> None :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.shutdown ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.shutdown ``` ```` ````{py:method} set_verbosity(verbosity: int) -> None :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.set_verbosity ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.set_verbosity ``` ```` ````{py:method} set_verbosity_hier(prefix: str, verbosity: int) -> None :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.set_verbosity_hier ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.set_verbosity_hier ``` ```` ````{py:method} add_change_sev(report_id: str, msg_regex: str, sev: typing.Any) -> None :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.add_change_sev ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.add_change_sev ``` ```` ````{py:method} remove_change_sev(report_id: str, msg_regex: str = '') -> None :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.remove_change_sev ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.remove_change_sev ``` ```` ````{py:method} emit_uvm(severity: str, msg: str, report_id: str = '', verbosity: int = 100, logger: logging.Logger | None = None, stacklevel: int = 2) -> None :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.emit_uvm ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.emit_uvm ``` ```` ````{py:method} process_record(record: logging.LogRecord) -> None :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.process_record ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.process_record ``` ```` ````{py:method} assert_no_failures(context: str = '') -> None :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.assert_no_failures ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.assert_no_failures ``` ```` ````{py:method} failure_message(context: str = '') -> str | None :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.failure_message ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.failure_message ``` ```` ````{py:method} log_summary(logger: logging.Logger) -> None :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.log_summary ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.log_summary ``` ```` ````{py:method} log_final_status(logger: logging.Logger, context: str = '', prior_failure_msg: str | None = None) -> str | None :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.log_final_status ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.log_final_status ``` ```` ````{py:method} _attach_filters() -> None :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server._attach_filters ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server._attach_filters ``` ```` ````{py:method} register_logger(log: logging.Logger | None) -> None :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.register_logger ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server.register_logger ``` ```` ````{py:method} _effective_verbosity(logger_name: str) -> int :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server._effective_verbosity ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server._effective_verbosity ``` ```` ````{py:method} _apply_catcher(msg: str, severity: str, report_id: str = '') -> str :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server._apply_catcher ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server._apply_catcher ``` ```` ````{py:method} _normalize_severity(severity: typing.Any) -> str :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server._normalize_severity ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server._normalize_severity ``` ```` ````{py:method} _severity_to_level(severity: str) -> int :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server._severity_to_level ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server._severity_to_level ``` ```` ````{py:method} _severity_from_level(level: int) -> str :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server._severity_from_level ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server._severity_from_level ``` ```` ````{py:method} _set_record_level(record: logging.LogRecord, level: int) -> None :canonical: pyuvm.uvm_reporting.uvm_report_server.uvm_report_server._set_record_level ```{autodoc2-docstring} pyuvm.uvm_reporting.uvm_report_server.uvm_report_server._set_record_level ``` ```` `````