女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

3天內不再提示

全棧開發進階指南:LuatOS-log庫從入門到實戰!

青山老竹農 ? 來源:jf_82863998 ? 作者:jf_82863998 ? 2025-05-15 16:12 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文將帶你深入探索LuatOS系統中log庫的核心原理與實戰技巧,通過代碼示例解析日志管理、錯誤追蹤及性能優化的最佳實踐,助力全棧工程師構建更穩健的物聯網應用。

今天,我們一起來認識LuatOS的log庫!

wKgZO2ghlR-ARhMJAAIfkz-JEfc587.png

一、 log.info()

log info()主要打印一些正常的信息。比如,記錄程序的啟動信息、某個模塊的初始化完成、重要業務流程的執行等。

我們利用log.info(),可以清晰了解程序的執行順序。

wKgZO2ghlVqAb5swAAEFO431ics424.png

tag為日志標識,標識日志來自哪個模塊或功能。

比如:在一個包含多個子系統的應用程序中,為每個子系統的日志添加相應的標簽,開發人員就能快速定位到問題所在的模塊。

在一個復雜的Lua腳本里,使用log.info() 函數在關鍵代碼位置,設置輸出信息,就能知道程序是否按預期順序執行。

如果你想在程序開頭看是否會記錄到模塊初始化,代碼可以這樣寫:

wKgZO2ghlZWAeTBSAACUxPsAfPk323.png

當模塊完成初始化,就能在日志打印里看到相關信息了。

二、 log.debug()

log.debug()主要用在開發和調試階段,記錄詳細的調試信息。

這些信息方便我們理解程序的執行流程、變量的變化。在開發完成后,可以根據需要關閉這些調試信息,以減少日志量和提高性能。

wKgZPGghlfyAECsgAAENAnjvLYM098.png


具體使用場景如下:

wKgZPGghlhuACzniAADU900Mv5Q587.png

當程序執行到log.debug("進入add函數,a = ".. a.. ", b = ".. b)時,它會輸出一條日志,明確顯示程序已經進入了add函數。

三、log.warn()

log.warn()主要用于記錄一些警告信息,表示程序遇到了一些可能存在潛在的風險,還沒有導致程序出錯,但可能需要我們關注的部分。

wKgZO2ghll6ANIpJAAEF9GmBwp0429.png

比如:當文件大小超過1MB,你想輸出一條警告信息提醒用戶,你就可以在代碼中使用log.warn()。

wKgZO2ghln-AVcxNAADDIxwqlPc822.png

當文件大小超過1MB時,程序就會執行log.warn()這行代碼,輸出一條警告信息,提醒開發者注意下文件大小。

四、 log.error()

log.error()主要用于記錄錯誤信息,當程序發生錯誤或異常情況時,使用這個函數來記錄相關的錯誤信息,以便開發者能夠快速定位和解決問題。

wKgZPGghlriAGwIEAAEHg1MUI0k954.png


具體應用場景:

wKgZO2ghlt6AUEYsAACl2TIg1YQ923.png

當除數為0時,輸出錯誤信息:除數不能為0。

五、log.setLevel()

以上是我們常用到的幾種日志類型。但有時候,debug是調試時用到的,并不想讓用戶看到我們的debug類型日志,難道要一個一個刪除嗎?

不用!我們可以用log.setLevel()函數設置日志級別。

在LuatOS的log庫中,日志有如下幾種類型:

LOG_SILENT(無日志模式)

LOG_DEBUG(debug日志模式)

LOG_INFO(info日志模式)

LOG_WARN(warning日志模式)

LOG_ERROR(error日志模式)

日志級別從低到高依次為:DEBUG < INFO < WARN < ERROR

只有日志級別大于或等于當前設置的級別時,該日志才會被輸出。

比如日志設置為INFO級別時:DEBUG級別的日志不會輸出,而INFO、WARN、ERROR級別的日志會輸出。

wKgZO2ghmAKAC8gTAAF4hR6DYoM816.png

比如:想設置為INFO日志模式,不要輸出debug日志信息,代碼就這樣寫:

wKgZPGghmHWABqC4AAAq44lECOY932.png

其余模式同理。

六、log.getLevel()

如果想要獲取到當前設置的日志級別,我們就需要用到 log.getLevel()函數。

wKgZPGghmLCACyPsAADc-AXm7vA582.png

示例如下:

wKgZPGghmN2AEw9nAADu1iEQ6eA101.png


七、log.style()

設置日志風格,需要使用到log.style(val)函數。

LuatOS的log庫提供了3種日志風格,分別為:默認風格0;調試風格1;調試風格2。

這幾種方式的日志呈現形式不同,根據個人習慣調整。

wKgZO2ghmQqAdupDAAE5VyYA-AQ320.png


示例如下:

wKgZPGghmSeANH1QAAB2p0Nhoso858.png

以log.info("ABC", "DEF", 123) 為例, 假設該代碼位于main.lua的12行。

那么三種風格的輸出樣式為:

默認風格0的輸出樣式為:I/user.ABC DEF 123

調試風格1的輸出樣式為:I/main.lua:12 ABC DEF 123

對比默認風格0,增加了文件名和代碼所在行數。

調試風格2的輸出樣式為:I/user.ABC main.lua:12 DEF 123

對比其他風格,信息位置排放有所區別。

關于log庫的內容就分享到這里了~

審核編輯 黃宇

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

    關注

    0

    文章

    16

    瀏覽量

    11542
  • LuatOS
    +關注

    關注

    0

    文章

    101

    瀏覽量

    2241
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

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

    針對開發者設計的實戰教程,本文聚焦LuatOS平臺log
    的頭像 發表于 05-12 15:23 ?862次閱讀
    解鎖<b class='flag-5'>LuatOS-log</b><b class='flag-5'>庫</b>:<b class='flag-5'>全</b><b class='flag-5'>棧</b>工程師的日志管理<b class='flag-5'>實戰</b>課!

    野火STM32開發實戰指南 火哥的書 開賣了

    什么、該如何進階等。另一個是通過對的了解和GPIO的學習,讓讀者快速掌握STM32的開發方法,這是入門的第一步。第二部分(第6~16章)是
    發表于 07-27 14:46

    【圖書分享】《STM32開發實戰指南

    一步講解了結合嵌入式實時操作系統、TCP/IP協議進行嵌入式系統開發的方法,讓讀者循序漸進、系統地掌握基于STM32官方進行開發的方法。 《STM32
    發表于 03-13 17:01

    stm32的開發實戰指南

    有誰有stm32的開發實戰指南,給我來一份,謝了!1211639441
    發表于 10-18 21:07

    求STM32開發實戰指南.........

    跪求STM32開發實戰指南...............................................
    發表于 11-29 13:54

    STM32開發實戰指南

    STM32開發實戰指南,一共5個部分,供大家參考
    發表于 03-09 08:20

    《STM32 HAL 開發實戰指南—基于H750》

    受限于單個文件不能超過5M,所以分成10個壓縮包分別上傳。 野火STM32系列叢書《STM32 HAL 開發實戰指南—基于H750》,內容殷實,講解詳細,適合
    發表于 01-14 10:09

    如何對STM32F10x標準開發進行概覽

    ,包括物聯網開發基礎實戰、IoT-ARM結構下的各類智能產品的設計、STM32的開發、全國電賽優秀作品分析等,如有需要請自行領取)STM
    發表于 12-06 06:54

    LabVIEW入門實戰開發100例

    LabVIEW入門實戰開發100例LabVIEW入門實戰開發100例LabVIEW
    發表于 02-18 11:44 ?0次下載

    arduino開發實戰指南

    arduino開發實戰指南
    發表于 02-22 14:56 ?0次下載

    STM32開發實戰指南

    STM32開發實戰指南-劉火良,電子 epub格式,清晰非掃描
    發表于 10-27 16:25 ?24次下載

    javaweb入門實戰

    JavaWeb是一門使用Java語言開發Web應用程序的技術,它廣泛應用于各種網站和在線應用程序的開發。對于想要學習和使用JavaWeb技術的開發者來說,
    的頭像 發表于 12-03 11:44 ?1813次閱讀

    LuatOS開發之4G模組隨機數(random)|實戰指南

    本次學習的實戰是關于4G模組LuatOS開發的隨機數示例指南,希望大家有所收獲。
    的頭像 發表于 11-30 09:51 ?758次閱讀
    <b class='flag-5'>LuatOS</b><b class='flag-5'>開發</b>之4G模組隨機數(random)|<b class='flag-5'>實戰</b><b class='flag-5'>指南</b>

    爬蟲數據獲取實戰指南入門高效采集

    爬蟲數據獲取實戰指南入門高效采集 ? ? 在數字化浪潮中,數據已成為驅動商業增長的核心引擎。無論是市場趨勢洞察、競品動態追蹤,還是用戶
    的頭像 發表于 03-24 14:08 ?613次閱讀

    快速入門——LuatOS:sys多任務管理實戰攻略!

    在嵌入式開發中,多任務管理是提升系統效率的關鍵。本教程專為快速入門設計,聚焦LuatOS的sys,通過實戰案例帶你快速掌握多任務創建、調度
    的頭像 發表于 05-29 14:36 ?211次閱讀
    快速<b class='flag-5'>入門</b>——<b class='flag-5'>LuatOS</b>:sys<b class='flag-5'>庫</b>多任務管理<b class='flag-5'>實戰</b>攻略!