亚洲精品久久久久久久久久久,亚洲国产精品一区二区制服,亚洲精品午夜精品,国产成人精品综合在线观看,最近2019中文字幕一页二页

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

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

3天內(nèi)不再提示

全棧開發(fā)進階指南:LuatOS-log庫從入門到實戰(zhàn)!

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

掃碼添加小助手

加入工程師交流群

本文將帶你深入探索LuatOS系統(tǒng)中l(wèi)og庫的核心原理與實戰(zhàn)技巧,通過代碼示例解析日志管理、錯誤追蹤及性能優(yōu)化的最佳實踐,助力全棧工程師構(gòu)建更穩(wěn)健的物聯(lián)網(wǎng)應用。

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

wKgZO2ghlR-ARhMJAAIfkz-JEfc587.png

一、 log.info()

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

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

wKgZO2ghlVqAb5swAAEFO431ics424.png

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

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

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

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

wKgZO2ghlZWAeTBSAACUxPsAfPk323.png

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

二、 log.debug()

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

這些信息方便我們理解程序的執(zhí)行流程、變量的變化。在開發(fā)完成后,可以根據(jù)需要關(guān)閉這些調(diào)試信息,以減少日志量和提高性能。

wKgZPGghlfyAECsgAAENAnjvLYM098.png


具體使用場景如下:

wKgZPGghlhuACzniAADU900Mv5Q587.png

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

三、log.warn()

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

wKgZO2ghll6ANIpJAAEF9GmBwp0429.png

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

wKgZO2ghln-AVcxNAADDIxwqlPc822.png

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

四、 log.error()

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

wKgZPGghlriAGwIEAAEHg1MUI0k954.png


具體應用場景:

wKgZO2ghlt6AUEYsAACl2TIg1YQ923.png

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

五、log.setLevel()

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

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

在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()函數(shù)。

wKgZPGghmLCACyPsAADc-AXm7vA582.png

示例如下:

wKgZPGghmN2AEw9nAADu1iEQ6eA101.png


七、log.style()

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

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

這幾種方式的日志呈現(xiàn)形式不同,根據(jù)個人習慣調(diào)整。

wKgZO2ghmQqAdupDAAE5VyYA-AQ320.png


示例如下:

wKgZPGghmSeANH1QAAB2p0Nhoso858.png

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

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

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

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

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

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

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

關(guān)于log庫的內(nèi)容就分享到這里了~

審核編輯 黃宇

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

    關(guān)注

    0

    文章

    16

    瀏覽量

    11647
  • LuatOS
    +關(guān)注

    關(guān)注

    0

    文章

    122

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    解鎖LuatOS-log工程師的日志管理實戰(zhàn)課!

    針對開發(fā)者設計的實戰(zhàn)教程,本文聚焦LuatOS平臺log
    的頭像 發(fā)表于 05-12 15:23 ?1216次閱讀
    解鎖<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'>實戰(zhàn)</b>課!

    嵌入式入門進階,怎么學?

    嵌入式入門進階,怎么學? 嵌入式學習的核心是 “軟硬結(jié)合的技術(shù)壁壘”,科學分層才能高效突破。以下是
    發(fā)表于 09-02 09:44

    野火STM32開發(fā)實戰(zhàn)指南 火哥的書 開賣了

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

    【圖書分享】《STM32開發(fā)實戰(zhàn)指南

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

    stm32的開發(fā)實戰(zhàn)指南

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

    求STM32開發(fā)實戰(zhàn)指南.........

    跪求STM32開發(fā)實戰(zhàn)指南...............................................
    發(fā)表于 11-29 13:54

    STM32開發(fā)實戰(zhàn)指南

    STM32開發(fā)實戰(zhàn)指南,一共5個部分,供大家參考
    發(fā)表于 03-09 08:20

    《STM32 HAL 開發(fā)實戰(zhàn)指南—基于H750》

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

    如何對STM32F10x標準開發(fā)進行概覽

    ,包括物聯(lián)網(wǎng)開發(fā)基礎實戰(zhàn)、IoT-ARM結(jié)構(gòu)下的各類智能產(chǎn)品的設計、STM32的開發(fā)、全國電賽優(yōu)秀作品分析等,如有需要請自行領(lǐng)取)STM
    發(fā)表于 12-06 06:54

    LabVIEW入門實戰(zhàn)開發(fā)100例

    LabVIEW入門實戰(zhàn)開發(fā)100例LabVIEW入門實戰(zhàn)開發(fā)100例LabVIEW
    發(fā)表于 02-18 11:44 ?0次下載

    STM32開發(fā)實戰(zhàn)指南

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

    javaweb入門實戰(zhàn)

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

    LuatOS開發(fā)之4G模組隨機數(shù)(random)|實戰(zhàn)指南

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

    快速入門——LuatOS:sys多任務管理實戰(zhàn)攻略!

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

    入門精通:電商API的開發(fā)指南

    在當今電商蓬勃發(fā)展的時代,API(應用程序編程接口)作為系統(tǒng)間的“橋梁”,已成為構(gòu)建高效、可擴展電商平臺的核心。開發(fā)涉及從前端用戶界面后端服務器、數(shù)據(jù)
    的頭像 發(fā)表于 07-23 15:55 ?552次閱讀
    <b class='flag-5'>入門</b><b class='flag-5'>到</b>精通:電商API的<b class='flag-5'>全</b><b class='flag-5'>棧</b><b class='flag-5'>開發(fā)指南</b>