oslo_reports.views.text 包

子模块

oslo_reports.views.text.generic 模块

提供通用的文本视图

此模块提供几个通用的视图,用于将模型序列化为人类可读的文本。

class oslo_reports.views.text.generic.BasicKeyValueView

基类: object

基本的键值文本视图

此视图使用基本键值方法将模型序列化为文本,其中每对键值都呈现为“key = str(value)”

class oslo_reports.views.text.generic.KeyValueView(indent_str='  ', key_sep=' = ', dict_sep=' = ', list_sep=' = ', anon_dict='[dict]', before_dict=None, before_list=None)

基类: object

键值文本视图

此视图通过遵循以下规则将模型序列化为文本:

keytext

key = text

rootkeyMapping
rootkey =
  serialize(key, value)
keySequence
key =
  serialize(item)
参数:
  • indent_str (str) – 用于表示一个“缩进”的字符串

  • key_sep (str) – 用于分隔键和值的分隔符

  • dict_sep (str) – 用于字典根键后的分隔符

  • list_sep (str) – 用于列表根键后的分隔符

  • anon_dict (str) – 当列表中存在字典时使用的“键”(不自动使用字典分隔符)

  • before_dict (strNone) – 在字典根键之前的行上放置的内容(使用 None 以避免插入额外的行)

  • before_list (strNone) – 在列表根键之前的行上放置的内容(使用 None 以避免插入额外的行)

class oslo_reports.views.text.generic.MultiView

基类: object

包含多个视图的文本视图

此视图简单地序列化数据模型中的每个值,然后用换行符将它们连接起来(忽略键值)。这对于序列化模型列表(作为类似数组的字典)很有用。

class oslo_reports.views.text.generic.TableView(column_names, column_values, table_prop_name)

基类: object

基本的表格文本视图

此视图将数据序列化为具有预定义列名和映射的基本表格。列宽均匀自动计算,列值相应地自动截断。值在列中居中。

参数:
  • column_names ([str]) – 每个列的标题

  • column_values ([str]) – 用于将每个行中的每个列匹配的项名称

  • table_prop_name (str) – 模型中包含行模型的属性的名称

oslo_reports.views.text.header 模块

带有标题的文本视图

此包定义了几个带有标题的文本视图

class oslo_reports.views.text.header.HeaderView(header)

基类: object

带有标题的文本视图

此视图简单地序列化模型并将给定的标题放在顶部。

参数:

header – 标题(可以是可以在其上调用 str() 的任何内容)

class oslo_reports.views.text.header.TitledView(title)

基类: HeaderView

带有标题的文本视图

此视图简单地序列化模型,并在顶部放置包含给定标题文本的预格式化标题。标题文本的长度可以长达 64 个字符。

参数:

title (str) – 视图的标题

FORMAT_STR = '========================================================================\n===={0: ^64}====\n========================================================================'

oslo_reports.views.text.process 模块

提供进程视图

此模块提供一个视图,用于以人类可读的形式可视化进程

class oslo_reports.views.text.process.ProcessView(path=None, text=None)

基类: JinjaView

进程视图

此视图显示由 oslo_reports.models.process.ProcessModel 定义的进程模型

VIEW_TEXT = "Process {{ pid }} (under {{ parent_pid }}) [ run by: {{ username }} ({{ uids.real|default('unknown uid') }}), state: {{ state }} ]\n{% for child in children %}    {{ child }}{% endfor %}"

oslo_reports.views.text.threading 模块

提供线程和堆栈跟踪视图

此模块提供一系列视图,用于以人类可读的形式可视化线程、绿色线程和堆栈跟踪。

class oslo_reports.views.text.threading.GreenThreadView

基类: object

绿色线程视图

此视图显示由数据模型 oslo_reports.models.threading.GreenThreadModel 提供的绿色线程

FORMAT_STR = '------{thread_str: ^60}------\n{stack_trace}'
class oslo_reports.views.text.threading.StackTraceView(path=None, text=None)

基类: JinjaView

堆栈跟踪视图

此视图显示由 oslo_reports.models.threading.StackTraceModel 定义的堆栈跟踪模型

VIEW_TEXT = '{% if root_exception is not none %}Exception: {{ root_exception }}\n------------------------------------\n\n{% endif %}{% for line in lines %}\n{{ line.filename }}:{{ line.line }} in {{ line.name }}\n    {% if line.code is not none %}`{{ line.code }}`{% else %}(source not found){% endif %}\n{% else %}\nNo Traceback!\n{% endfor %}'
class oslo_reports.views.text.threading.ThreadView

基类: object

线程集合视图

此视图显示由数据模型 oslo_reports.models.threading.ThreadModel # noqa 提供的 Python 线程

FORMAT_STR = '------{thread_str: ^60}------\n{stack_trace}'

模块内容

提供基本的文本视图

此模块提供几个基本视图,这些视图将模型序列化为人类可读的文本。