在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

推薦3個非常不錯的開源日志庫

GReq_mcu168 ? 來源:小麥大叔 ? 作者:小麥大叔 ? 2022-05-12 14:51 ? 次閱讀
日志系統在系統開發和調整過程中的重要性,想必大家應該都清楚。特別是項目出問題之后,卻沒有日志可以幫忙定位問題,就非常令人痛苦。

因為我們不可能一直通過調試器去單步調試程序,所以設備的運行日志顯得尤為重要。

通常我們對日志有這些要求:

  • 不同的日志級別(Debug,Warning,Info,Error,Fatal);
  • 日志打印要和printf一樣簡單易用;
  • 能夠設置日志級別;
  • 占用空間小;
  • 可配置,甚至可以禁用日志;
  • 基于不同日志級別,支持顏色高亮;
  • 可以自定義配置,時間戳;
  • 支持RTOS

以上是比較基本的功能,但是在嵌入式設備中,有的時候我們希望可以保存設備的運行日志,我們需要以下的一些功能;

  • 支持多種訪問方式,比如串口終端,保存到嵌入式文件系統中;
  • 支持shell命令行通過串口終端進行訪問;

以上這些需求不一定會全部實現。

除了常用的log4clog4cpp,下面給大家推薦3個非常不錯的開源日志庫,比較適合用在單片機的項目中。從開始的輕量,到后面的功能豐富,最后一個很強大,所以請耐心看到最后。

rxi_log

項目地址:https://github.com/rxi/log.c

基于 C99 實現的簡單日志庫,具體輸出如下所示;

0d58c684-d1bc-11ec-bce3-dac502259ad0.pngimage-20211204142024466

具體用法

將源碼中的log.clog.h集成到你的項目中即可,需要打印日志的話,調用下面的API即可,如下所示;

log_trace(constchar*fmt,...);
log_debug(constchar*fmt,...);
log_info(constchar*fmt,...);
log_warn(constchar*fmt,...);
log_error(constchar*fmt,...);
log_fatal(constchar*fmt,...);

除了這些API,還有log_set_quietlog_set_lockLOG_USE_COLOR等等,詳情請看原項目。

ulog

項目地址:https://github.com/rdpoor/ulog

uLog 為嵌入式微控制器或任何資源有限的系統提供結構化的日志記錄機制。它繼承了流行的Log4cLog4j平臺背后的一些概念,但開銷更低。

uLog 的一些特點:

  • uLog 易于集成到幾乎任何環境中,由一個頭文件和一個源文件組成,并且是用純 C 編寫的。
  • uLog 提供熟悉的嚴重級別(CRITICAL、ERROR、WARNING、INFO、DEBUG、TRACE)。
  • uLog 支持多個用戶定義的輸出(控制臺、日志文件、內存緩沖區等),每個輸出都有自己的報告閾值級別。
  • uLog 是具有最小依賴性的“積極獨立”,僅需要 stdio.h、string.h 和 stdarg.h。
  • 當您不使用 uLog 時,它不會妨礙您:如果 ULOG_ENABLED 在編譯時未定義,則不會生成日志記錄代碼。
  • uLog 已經過很好的測試。有關詳細信息,請參閱隨附的 ulog_test.c 文件。
0d985fe2-d1bc-11ec-bce3-dac502259ad0.pngcolor coding

EasyLogger

項目地址:https://github.com/armink/EasyLogger

0dbeb408-d1bc-11ec-bce3-dac502259ad0.pngTextColor

這個項目我用了很長時間,強烈推薦,是RT-Thread大佬的作品,已經集成到RTOS的內部了,支持的功能非常豐富,基本滿足各種開發的需求。

特點如下:

  • 輕量,ROM<1.6K, RAM<0.3K
  • 支持多種訪問模式(例如:終端、文件、數據庫、串口、485、Flash...);
  • 日志內容可包含級別、時間戳、線程信息、進程信息等;
  • 線程安全,并支持異步輸出緩沖輸出模式;
  • 支持多種操作系統(RT-Thread、UCOSLinux、Windows...),也支持裸機平臺
  • 日志支持RAW格式,支持hexdump
  • 支持按標簽級別關鍵詞進行動態過濾;
  • 各級別日志支持不同顏色顯示;
  • 擴展性強,支持以插件形式擴展新功能。

以上只是這個項目的其中一部分,具體可以參考項目地址。

summary

希望大家在平常的開發中,重視日志的使用,每一個開發階段設置不同級別的日志,不同的模塊也分別設置模塊的日志,這樣方便定位出現一些問題,快速解決,提高效率。

審核編輯 :李倩


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6061

    文章

    44843

    瀏覽量

    645377
  • 日志系統
    +關注

    關注

    0

    文章

    8

    瀏覽量

    7057
  • 開源
    +關注

    關注

    3

    文章

    3546

    瀏覽量

    43351

原文標題:高手常用的3個開源庫,讓單片機開發事半功倍!

文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    解鎖LuatOS-log:全棧工程師的日志管理實戰課!

    針對全棧開發者設計的實戰教程,本文聚焦LuatOS平臺log的高效使用,從基礎配置到高級調試策略,手把手教你搭建可擴展的日志系統,提升項目維護效率。 今天,我們一起來認識LuatOS的log
    的頭像 發表于 05-12 15:23 ?258次閱讀
    解鎖LuatOS-log<b class='flag-5'>庫</b>:全棧工程師的<b class='flag-5'>日志</b>管理實戰課!

    如何在CentOS系統中部署ELK日志分析系統

    日志分析已成為企業監控、故障排查和性能優化的重要組成部分。ELK(Elasticsearch、Logstash 和 Kibana)堆棧作為一種強大的開源解決方案,提供了高效的日志收集、存儲和可視化
    的頭像 發表于 05-08 11:47 ?98次閱讀
    如何在CentOS系統中部署ELK<b class='flag-5'>日志</b>分析系統

    基于RV1126開發板限制系統日志大小教程

    的系統日志主要保存在/var/log目錄中,當對一臺服務器進行任何操作都會有日志產生,如果服務器一年中沒有特別重要的情況發生,那么這些日志保留下來就會占用服務器的空間,所以系統日志的管
    的頭像 發表于 04-16 11:18 ?120次閱讀
    基于RV1126開發板限制系統<b class='flag-5'>日志</b>大小教程

    AI開源模型有什么用

    AI開源模型作為推動AI技術發展的重要力量,正深刻改變著我們的生產生活方式。接下來,AI部落小編帶您了解AI開源模型有什么用。
    的頭像 發表于 02-24 11:50 ?277次閱讀

    如果系統日志顯示驅動問題,我該怎么辦?

    如果系統日志顯示驅動問題,您可以按照以下步驟進行排查和解決: 1.檢查內核日志 使用 dmesg 命令查看內核日志,過濾出與驅動相關的錯誤信息: ? sudo dmesg | grep -iE
    的頭像 發表于 01-20 17:38 ?411次閱讀

    1工具4類日志,幫你解決99%的問題

    眾所周知,通過日志可以對研發過程中,以及模組運行過程中的各種故障進行分析,快速定位和解決問題。 但新手朋友往往念叨著“抓日志”,卻又無從下手……此時就不得不提到工程師朋友的寶藏工具
    的頭像 發表于 12-17 16:26 ?400次閱讀
    1<b class='flag-5'>個</b>工具4類<b class='flag-5'>日志</b>,幫你解決99%的問題

    開源AI模型是干嘛的

    開源AI模型是指那些公開源代碼、允許自由訪問和使用的AI模型集合。這些模型通常經過訓練,能夠執行特定的任務。以下,是對開源AI模型的詳細
    的頭像 發表于 12-14 10:33 ?613次閱讀

    芯原股份與開源圖形LVGL達成戰略合作

    芯原股份 (芯原,股票代碼:688521.SH) 今日宣布與嵌入式系統領域領先的開源圖形LVGL達成戰略合作,在LVGL中支持芯原的低功耗3D和VGLite 2.5D GPU技術。
    的頭像 發表于 11-29 09:20 ?635次閱讀

    nginx日志配置方法

    access_log用來定義日志級別,日志位置。
    的頭像 發表于 10-24 17:43 ?471次閱讀

    日志篇:模組日志總體介紹

    ?今天我們學習合宙模組日志總體介紹,以下進入正文。 一、本文討論的邊界 本文是對合宙 4G 模組, 以及 4G+GNSS 模組的日志功能的總體介紹。通過日志,可以對研發過程中,以及模組運行過程中
    的頭像 發表于 10-24 07:16 ?452次閱讀
    <b class='flag-5'>日志</b>篇:模組<b class='flag-5'>日志</b>總體介紹

    Matepad pro12.2 已上市半個月,但是還沒有在開源網站看到該項目的開源信息,違背開源精神

    Matepad pro12.2 已上市半個月,本人自己也購買了同款12+256的pad,想要同步學習下這款pad的一些體驗還不錯的功能點,但是目前為止還沒有在開源網站看到該項目的開源信息,也查詢不到
    發表于 08-27 17:25

    統一日志數據流圖

    統一日志數據流圖 日志系統數據流圖 系統進行日志收集的過程可以分為三環節: (1)日志收集和導入ElasticSearch (2)Elas
    的頭像 發表于 08-21 15:00 ?475次閱讀
    統一<b class='flag-5'>日志</b>數據流圖

    日志框架簡介-Slf4j+Logback入門實踐

    前言 隨著互聯網和大數據的迅猛發展,分布式日志系統和日志分析系統已廣泛應用,幾乎所有應用程序都使用各種日志框架記錄程序運行信息。因此,作為工程師,了解主流的日志記錄框架
    的頭像 發表于 07-30 10:00 ?1385次閱讀
    <b class='flag-5'>日志</b>框架簡介-Slf4j+Logback入門實踐

    奇怪!應用的日志呢??

    1. 問題回顧 問題背景 是在進行中臺應用中間件遷移過程中,發現存在 項目啟動失敗 或者 項目正常啟動 (jsf正常掛載并正常運行,mq正常發送和消費)但是 無任何日志打印 現象。 更奇怪 的是不打
    的頭像 發表于 06-11 10:48 ?480次閱讀
    奇怪!應用的<b class='flag-5'>日志</b>呢??

    阿里云與中興通訊達成開源數據合作

    近日,阿里云與中興通訊宣布達成開源數據領域的深度合作。中興通訊正式加入PolarDB開源社區,并榮任首屆理事會成員單位,這一舉措標志著兩大科技巨頭在數據領域的合作邁向新的高度。
    的頭像 發表于 05-17 10:47 ?846次閱讀
    主站蜘蛛池模板: 台湾一级毛片 | 久久国产乱子伦精品免 | 黄色国产 | 亚洲综合在线一区 | 最新国产你懂的在线网址 | 99久久免费中文字幕精品 | 国产精品香蕉成人网在线观看 | 欧美a一 | 四虎国产精品4hu永久 | 日日干夜夜操视频 | 日本黄色大片免费观看 | 黄蓉h肉辣文大全 | 欧美国产日本高清不卡 | 日本亚洲欧美美色 | 天堂在线网| hs网站在线观看 | 日本久操 | 农村妇女野外一级毛片 | a男人的天堂久久a毛片 | 1024手机在线观看视频 | 国产高清免费 | 色欧美亚洲 | 一级特黄性生活大片免费观看 | 成人性色生活片免费看爆迷你毛片 | 成人国产三级精品 | 亚洲成年人免费网站 | 国产一区二区丁香婷婷 | 一级毛片日韩a欧美 | 日韩毛片在线影视 | 交在线观看网站视频 | 香蕉视频国产在线观看 | 在线播放国产不卡免费视频 | 日本视频一区在线观看免费 | 91大神在线精品网址 | 色偷偷免费视频 | 男女性高爱潮免费的国产 | 日本不卡一区 | 久久综合五月开心婷婷深深爱 | 亚洲国产成人精品青青草原100 | 小草影院亚洲私人影院 | 九九热精品在线 |