需要兩個步驟:
1 開啟除錯開關:
你除錯的檔案中必然包含了,或者《linux /paltforam_device.h》,後者包含了前者,在包含此標頭檔案之前,使用#define debug 1 來開啟除錯開關:例如
#include
#include
#include
#include
#define debug 1
#include
在linux/device.h檔案中:
#define dev_printk(level, dev, format, arg...) \
printk(level "%s %s: " format , dev_driver_string(dev) , (dev)->bus_id , ## arg)
#ifdef debug
#define dev_dbg(dev, format, arg...) \
dev_printk(kern_debug , dev , format , ## arg)
#else
static inline int __attribute__ ((format (printf, 2, 3)))
dev_dbg(struct device * dev, const char * fmt, ...)
#endif
2 修改檔案kernel/printk檔案
/* printk's without a loglevel use this.. */
#define default_message_loglevel 4 /* kern_warning */
/* we show everything that is more important than this.. */
#define minimum_console_loglevel 1 /* minimum loglevel we let people use */
#define default_console_loglevel 8 /* anything more serious than kern_debug */
其中default_console_loglevel 為終端console輸出的最低級別,比這嚴重的都將輸出。原來該值為7,則除錯資訊無法輸出,修改為8則全部有輸出。
linux/kernel檔案中
#define kern_emerg "<0>" /* system is unusable */
#define kern_alert "<1>" /* action must be taken immediately */
#define kern_crit "<2>" /* critical conditions */
#define kern_err "<3>" /* error conditions */
#define kern_warning "<4>" /* warning conditions */
#define kern_notice "<5>" /* normal but significant condition */
#define kern_info "<6>" /* informational */
#define kern_debug "<7>" /* debug-level messages */
可以看到kern_debug是級別最低的。
cron 開啟其日誌 log
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!起因 今天發現一台ubuntu伺服器crontab定時執行scp的備份指令碼失敗,手動執行指令碼沒問題,所以想從crontab的日誌裡找原因,突然發現我的 var log下沒有cron日誌,這裡記錄一下如何ubuntu server如何檢視cron...
app除錯開啟Log
ios需要把build configuration設定成debug engine executestring print release print 把build native.bat裡 set ndk debug 1 這一行的注釋去掉 1.在cpp工程中搜尋print 定位到 int lua pr...
cron 開啟其日誌 log
起因 今天發現一台ubuntu伺服器crontab定時執行scp的備份指令碼失敗,手動執行指令碼沒問題,所以想從crontab的日誌裡找原因,突然發現我的 var log下沒有cron日誌,這裡記錄一下如何ubuntu server如何檢視crontab日誌 crontab記錄日誌 修改rsyslo...