ROS使用rosout包來記錄各個節點的log信息,通常這些log信息是一些可以讀懂的字符串信息,這些信息一般用來記錄節點的運行狀態。
ROS有五種不同類型的log信息,分別為:logdebug、loginfo、logwarn、logerr、logfatal。
等級由低到高:debug<info<warn<Error<Fatal;
區別:
- debug 級別最低,可以隨意的使用于任何覺得有利于在調試時更詳細的了解系統運行狀態的東東;
- info 重要,輸出信息:用來反饋系統的當前狀態給最終用戶的;
- 后三個,警告、錯誤、嚴重錯誤,這三者應該都在系統運行時檢測到了一個不正常的狀態。
- warn, 可修復,系統可繼續運行下去;
- Error, 可修復性,但無法確定系統會正常的工作下去;
- Fatal,相當嚴重,可以肯定這種錯誤已經無法修復,并且如果系統繼續運行下去的話后果嚴重。
什么時候使用 info, warn , error ?
- info 用于打印程序應該出現的正常狀態信息, 便于追蹤定位;
- warn 表明系統出現輕微的不合理但不影響運行和使用;
- error 表明出現了系統錯誤和異常,無法正常完成目標操作
ROS使用以下語句來記錄log信息
rospy.logdebug(msg, *args, **kwargs)
rospy.loginfo(msg, *args, **kwargs)
rospy.logwarn(msg, *args, **kwargs)
rospy.logerr(msg, *args, **kwargs)
rospy.logfatal(msg, *args, **kwargs)
參考:
[1]https://blog.csdn.net/weixin_43644424/article/details/124194184
[2]https://blog.csdn.net/lijun2247900158/article/details/51063109
[3]https://www.cnblogs.com/alice-fee/p/6214654.html