如何停止使用protobuf3打印错误消息“由于缺少必填字段而无法分析类型的消息”

时间:2018-08-16 02:28:44

标签: protocol-buffers protobuf-c protobuf-3

我只想在记录某些内容时从字符串中解析一个实例,而不关心结果。

但是当我将protobuf更新到3.5.0时,烦人的消息总是打印到终端(stderr):

  

“由于缺少必填字段,因此无法分析类型的消息”

必须填写其字段。

如何停止打印错误消息?

2 个答案:

答案 0 :(得分:0)

选项:

  • 将其设置为optional而不是required
  • 提供丢失的数据
  • 钩住stderr并将其发送到nul

答案 1 :(得分:0)

据我所知,protobuf库本身并不直接打印到stderr。而是通过boost::funcions之类的API返回错误消息。

因此,似乎是您自己的代码正在将此消息打印到stderr,或者您已启用某些调试模式。

您可以尝试向打印品添加调试器挂钩,以查看其来源。