【问题标题】:High performance logging library for embedded applications用于嵌入式应用程序的高性能日志库
【发布时间】:2011-04-19 19:28:03
【问题描述】:

我正在寻找将在嵌入式设备上使用的高性能日志库。

我还想说,我以前使用过PaulBunyan 日志库,它提供了一种有效的信息传输方法。

[高效我的意思是它有一个解决方案,当通过低速接口(例如串行)发送数据时只传输__LINE____FILE__ - 当然之前已经进行了__LINE__ __FILE__ 映射扫码]。

您知道这样的解决方案或至少类似的解决方案吗?

提前感谢任何指针/类似的解决方案,

尤利安

【问题讨论】:

    标签: c++ c logging embedded


    【解决方案1】:

    决定实施这一点,因为没有可用的替代方案。

    【讨论】:

      【解决方案2】:

      最好的办法是使用您提到的同一个日志库,但将特定于操作系统的代码(如:行号、文件名、串行通信)与逻辑代码分开。特定于操作系统的代码必须包含在函数或宏中,然后从逻辑代码中调用。

      例子:

      #OS_LINE   _LINE_
      #OS_FILE   _FILE_
      #OS_SEND(a) Send(a)
      
      int log(void)
      {
         char msg[50];
         sprintf(msg, "line %i, %s", OS_LINE, OS_FILE);
         OS_SEND(msg);
         return 0;
      }
      

      这样,您只需更改每个设备的操作系统特定宏即可重复使用该库。

      【讨论】:

      • 谢谢。我会仔细看看的。尽管在传输数据量方面这并没有为我提供一些实际的效率。可能我必须自己实现。
      猜你喜欢
      • 1970-01-01
      • 2018-04-24
      • 1970-01-01
      • 2012-06-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多