chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

全棧開(kāi)發(fā)進(jìn)階指南:LuatOS-log庫(kù)從入門(mén)到實(shí)戰(zhàn)!

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

掃碼添加小助手

加入工程師交流群

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

今天,我們一起來(lái)認(rèn)識(shí)LuatOS的log庫(kù)!

wKgZO2ghlR-ARhMJAAIfkz-JEfc587.png

一、 log.info()

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

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

wKgZO2ghlVqAb5swAAEFO431ics424.png

tag為日志標(biāo)識(shí),標(biāo)識(shí)日志來(lái)自哪個(gè)模塊或功能。

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

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

如果你想在程序開(kāi)頭看是否會(huì)記錄到模塊初始化,代碼可以這樣寫(xiě):

wKgZO2ghlZWAeTBSAACUxPsAfPk323.png

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

二、 log.debug()

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

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

wKgZPGghlfyAECsgAAENAnjvLYM098.png


具體使用場(chǎng)景如下:

wKgZPGghlhuACzniAADU900Mv5Q587.png

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

三、log.warn()

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

wKgZO2ghll6ANIpJAAEF9GmBwp0429.png

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

wKgZO2ghln-AVcxNAADDIxwqlPc822.png

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

四、 log.error()

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

wKgZPGghlriAGwIEAAEHg1MUI0k954.png


具體應(yīng)用場(chǎng)景:

wKgZO2ghlt6AUEYsAACl2TIg1YQ923.png

當(dāng)除數(shù)為0時(shí),輸出錯(cuò)誤信息:除數(shù)不能為0。

五、log.setLevel()

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

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

在LuatOS的log庫(kù)中,日志有如下幾種類(lèi)型:

LOG_SILENT(無(wú)日志模式)

LOG_DEBUG(debug日志模式)

LOG_INFO(info日志模式)

LOG_WARN(warning日志模式)

LOG_ERROR(error日志模式)

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

只有日志級(jí)別大于或等于當(dāng)前設(shè)置的級(jí)別時(shí),該日志才會(huì)被輸出。

比如日志設(shè)置為INFO級(jí)別時(shí):DEBUG級(jí)別的日志不會(huì)輸出,而INFO、WARN、ERROR級(jí)別的日志會(huì)輸出。

wKgZO2ghmAKAC8gTAAF4hR6DYoM816.png

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

wKgZPGghmHWABqC4AAAq44lECOY932.png

其余模式同理。

六、log.getLevel()

如果想要獲取到當(dāng)前設(shè)置的日志級(jí)別,我們就需要用到 log.getLevel()函數(shù)。

wKgZPGghmLCACyPsAADc-AXm7vA582.png

示例如下:

wKgZPGghmN2AEw9nAADu1iEQ6eA101.png


七、log.style()

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

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

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

wKgZO2ghmQqAdupDAAE5VyYA-AQ320.png


示例如下:

wKgZPGghmSeANH1QAAB2p0Nhoso858.png

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

那么三種風(fēng)格的輸出樣式為:

默認(rèn)風(fēng)格0的輸出樣式為:I/user.ABC DEF 123

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

對(duì)比默認(rèn)風(fēng)格0,增加了文件名和代碼所在行數(shù)。

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

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

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

審核編輯 黃宇

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

    關(guān)注

    0

    文章

    17

    瀏覽量

    11740
  • LuatOS
    +關(guān)注

    關(guān)注

    0

    文章

    171

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

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

    針對(duì)開(kāi)發(fā)者設(shè)計(jì)的實(shí)戰(zhàn)教程,本文聚焦LuatOS平臺(tái)log
    的頭像 發(fā)表于 05-12 15:23 ?1635次閱讀
    解鎖<b class='flag-5'>LuatOS-log</b><b class='flag-5'>庫(kù)</b>:<b class='flag-5'>全</b><b class='flag-5'>棧</b>工程師的日志管理<b class='flag-5'>實(shí)戰(zhàn)</b>課!

    LuatOS exgnss擴(kuò)展庫(kù)實(shí)戰(zhàn)進(jìn)階:GNSS功能開(kāi)發(fā)流程!

    GNSS功能開(kāi)發(fā)涉及多環(huán)節(jié)協(xié)同,LuatOS exgnss擴(kuò)展庫(kù)是其中的關(guān)鍵樞紐。本文以流程探秘形式,硬件準(zhǔn)備、固件燒錄到代碼實(shí)現(xiàn),詳解
    的頭像 發(fā)表于 11-14 15:24 ?6036次閱讀
    <b class='flag-5'>LuatOS</b> exgnss擴(kuò)展<b class='flag-5'>庫(kù)</b><b class='flag-5'>實(shí)戰(zhàn)</b><b class='flag-5'>進(jìn)階</b>:GNSS功能<b class='flag-5'>開(kāi)發(fā)</b><b class='flag-5'>全</b>流程!

    嵌入式入門(mén)進(jìn)階,怎么學(xué)?

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

    Vibe Coding AI開(kāi)發(fā)實(shí)戰(zhàn)

    整合 Vibe Coding AI開(kāi)發(fā)模式支持從前端后端、數(shù)據(jù)庫(kù)
    發(fā)表于 04-15 16:02

    野火STM32庫(kù)開(kāi)發(fā)實(shí)戰(zhàn)指南 火哥的書(shū) 開(kāi)賣(mài)了

    什么、該如何進(jìn)階等。另一個(gè)是通過(guò)對(duì)庫(kù)的了解和GPIO的學(xué)習(xí),讓讀者快速掌握STM32的開(kāi)發(fā)方法,這是入門(mén)的第一步。第二部分(第6~16章)是庫(kù)
    發(fā)表于 07-27 14:46

    【圖書(shū)分享】《STM32庫(kù)開(kāi)發(fā)實(shí)戰(zhàn)指南

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

    stm32的庫(kù)開(kāi)發(fā)實(shí)戰(zhàn)指南

    有誰(shuí)有stm32的庫(kù)開(kāi)發(fā)實(shí)戰(zhàn)指南,給我來(lái)一份,謝了!1211639441
    發(fā)表于 10-18 21:07

    求STM32庫(kù)開(kāi)發(fā)實(shí)戰(zhàn)指南.........

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

    STM32庫(kù)開(kāi)發(fā)實(shí)戰(zhàn)指南

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

    STM32庫(kù)開(kāi)發(fā)實(shí)戰(zhàn)指南

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

    javaweb入門(mén)實(shí)戰(zhàn)

    JavaWeb是一門(mén)使用Java語(yǔ)言開(kāi)發(fā)Web應(yīng)用程序的技術(shù),它廣泛應(yīng)用于各種網(wǎng)站和在線應(yīng)用程序的開(kāi)發(fā)。對(duì)于想要學(xué)習(xí)和使用JavaWeb技術(shù)的開(kāi)發(fā)者來(lái)說(shuō),
    的頭像 發(fā)表于 12-03 11:44 ?2327次閱讀

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

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

    快速入門(mén)——LuatOS:sys庫(kù)多任務(wù)管理實(shí)戰(zhàn)攻略!

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

    入門(mén)精通:電商API的開(kāi)發(fā)指南

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

    LuatOS:485 總線硬件設(shè)計(jì)要點(diǎn)與 exmodbus 庫(kù)開(kāi)發(fā)實(shí)戰(zhàn)

    在工業(yè)物聯(lián)網(wǎng)通信開(kāi)發(fā)中,485 總線與 Modbus 協(xié)議的組合應(yīng)用十分常見(jiàn)。本文以合宙 Air780EHV 系列模組為實(shí)例,圍繞 LuatOS 開(kāi)發(fā)環(huán)境,詳解 485 總線的硬件設(shè)計(jì)細(xì)節(jié),包括其
    的頭像 發(fā)表于 03-19 17:57 ?218次閱讀
    <b class='flag-5'>LuatOS</b>:485 總線硬件設(shè)計(jì)要點(diǎn)與 exmodbus <b class='flag-5'>庫(kù)</b><b class='flag-5'>開(kāi)發(fā)</b><b class='flag-5'>實(shí)戰(zhàn)</b>