跳到主要内容
版本:1.2.2

GroupedMessage

私有源码

gpm = GroupedMessage(
data: Sequence[str] | Warning | BaseException | None = None,
)

一组信息。

用来封装多行str(信息)、单个的警告对象、或单个的异常对象。

该类自动用于mproc.LineProcMirrorhost.LineHostMirror。绝大多数情况下,用户不需要直接使用该类。

别名

该类可以按以下方式之一获取

import syncstream


syncstream.GroupedMessage
syncstream.base.GroupedMessage

参数

参数类型必选
说明
dataSequence[str] | Warning | BaseException一组信息来源。该输入值会处理成一行或多行。处理后的信息可以序列化。

方法

serialize

jdata: SerializedMessage = gpm.serialize()

将该信息项序列化为JSON兼容的字典。

输出

参数类型
说明
jdataSerializedMessage序列化后的字典。该字典可以由deserialize方法逆变换为GroupedMessage

deserialize

gpm: GroupedMessage = GroupedMessage.deserialize(
jdata: SerializedMessage | GroupedMessage
)

将JSON兼容的字典逆序列化为该类的实例。

输入

参数类型必选
说明
jdataSerializedMessage | GroupedMessage序列化的字典。该字典 JSON 兼容,并且可以透过网络数据包传输。若该值不是序列化后的字典,则按原样返回该值。

输出

参数类型
说明
gpmGroupedMessage逆序列化后的对象。该对象可以透过str(gpm)格式化为字符串。

范例

将错误信息的回溯捕获为一组信息

use_grouped_messages.py
from syncstream.base import GroupedMessage

try:
raise ImportError('A testing exception object.')
except ImportError as error:
gpm = GroupedMessage(error)

print(gpm)