Sofia-SIP辅助文档四 – 日志以及调试信息输出

  • Post author:
  • Post category:其他




http://sofia-sip.sourceforge.net/refdocs/debug_logs.html

,翻译自官网的这张网页。

Sofia-SIP各个组件都可以输出各式各样的调试信息。

具体输出哪些调试信息由调试等级值决定。等级值通常是模块特定的,值由模块特定的环境变量值决定。所有的模块都有一个缺省的等级值,由环境变量SOFIA_DEBUG来控制。

控制日志以及其他调试输出的环境变量有如下这些:

  • SOFIA_DEBUG缺省调试等级(0..9)
  • NUA_DEBUG User Agent engine (nua) 调试等级(0..9)
  • SOA_DEBUG SDP Offer/Answer engine (soa) 调试等级(0..9)
  • NEA_DEBUG Event engine (nea) 调试等级(0..9)
  • IPTSEC_DEBUG HTTP/SIP 认证模块调试等级(0..9)
  • NTA_DEBUG 事务引擎调试等级(0..9)
  • TPORT_DEBUG 传输事件调试等级(0..9)

    • 如果设置来了TPORT_LOG,打印输出所有解析完毕的传输层SIP消息
    • TPORT_DUMP文件,用来转储传输层收到的未解析消息
  • SU_DEBUG su模块调试等级(0..9)

预定义的调试输出等级有:

  • 0 SU_DEBUG_0() – 严重错误
  • 1 SU_DEBUG_1() – 危险的错误,子系统层的minimal progress
  • 2 SU_DEBUG_2() – 非危险错误
  • 3 SU_DEBUG_3() – 告警,进度消息
  • 5 SU_DEBUG_5() – 信令协议动作
  • 7 SU_DEBUG_7() – 媒体协议动作
  • 9 SU_DEBUG_9() – 进出函数,非常详尽的进度

除了上述提到的宏,还有一些打印日志消息的函数:

  • su_llog(),su_vllog()
  • su_perror(),su_perror2()

可以用下面所列的函数设置日志等级(例如,设置成配置文件中预定义的等级)。

  • su_log_set_level(),su_log_soft_set_level()

可以使用su_log_redirect()函数来完成日志输出重定向。例如,重定向到系统日志或者日志服务器