99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

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

合宙LuatOS ? 來源:合宙LuatOS ? 作者:合宙LuatOS ? 2025-05-12 15:23 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

針對全棧開發(fā)者設(shè)計的實戰(zhàn)教程,本文聚焦LuatOS平臺log庫的高效使用,從基礎(chǔ)配置到高級調(diào)試策略,手把手教你搭建可擴展的日志系統(tǒng),提升項目維護效率。

今天,我們一起來認(rèn)識LuatOS的log庫!

wKgZO2ghlR-ARhMJAAIfkz-JEfc587.png

一、 log.info()

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

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

wKgZO2ghlVqAb5swAAEFO431ics424.png

tag為日志標(biāo)識,標(biāo)識日志來自哪個模塊或功能。

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

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

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

wKgZO2ghlZWAeTBSAACUxPsAfPk323.png

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

二、 log.debug()

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

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

wKgZPGghlfyAECsgAAENAnjvLYM098.png


具體使用場景如下:

wKgZPGghlhuACzniAADU900Mv5Q587.png

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

三、log.warn()

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

wKgZO2ghll6ANIpJAAEF9GmBwp0429.png

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

wKgZO2ghln-AVcxNAADDIxwqlPc822.png

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

四、 log.error()

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

wKgZPGghlriAGwIEAAEHg1MUI0k954.png


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

wKgZO2ghlt6AUEYsAACl2TIg1YQ923.png

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

五、log.setLevel()

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

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

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

LOG_SILENT(無日志模式)

LOG_DEBUG(debug日志模式)

LOG_INFO(info日志模式)

LOG_WARN(warning日志模式)

LOG_ERROR(error日志模式)

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

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

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

wKgZO2ghmAKAC8gTAAF4hR6DYoM816.png

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

wKgZPGghmHWABqC4AAAq44lECOY932.png

其余模式同理。

六、log.getLevel()

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

wKgZPGghmLCACyPsAADc-AXm7vA582.png

示例如下:

wKgZPGghmN2AEw9nAADu1iEQ6eA101.png


七、log.style()

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

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

這幾種方式的日志呈現(xiàn)形式不同,根據(jù)個人習(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

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

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

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

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

審核編輯 黃宇

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

    關(guān)注

    0

    文章

    3

    瀏覽量

    906
  • LuatOS
    +關(guān)注

    關(guān)注

    0

    文章

    99

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

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

    本文將帶你深入探索LuatOS系統(tǒng)中log的核心原理與實戰(zhàn)技巧,通過代碼示例解析日志管理、錯誤
    的頭像 發(fā)表于 05-15 16:12 ?2293次閱讀
    <b class='flag-5'>全</b><b class='flag-5'>棧</b>開發(fā)進階指南:<b class='flag-5'>LuatOS-log</b><b class='flag-5'>庫</b>從入門到<b class='flag-5'>實戰(zhàn)</b>!

    工程師是什么

    工程師的個人看法。在我眼里,工程師是下能玩硬件和驅(qū)動,上能寫網(wǎng)頁和js,中間能玩轉(zhuǎn)服務(wù)
    的頭像 發(fā)表于 08-28 10:11 ?7401次閱讀

    工程師的尷尬處境

    今天無意百度了下“工程師”,發(fā)現(xiàn)自己的處境和百科里描述還真挺像的。
    的頭像 發(fā)表于 09-13 10:45 ?3740次閱讀

    如何定義工程師和DevOps

    工程師(本文稱「」開發(fā)者)和 DevOps 無疑是近期最火的詞匯,無論是國外還是國內(nèi)。而且火爆程度遠(yuǎn)超于想象。
    的頭像 發(fā)表于 09-21 10:14 ?4466次閱讀

    工程師的觀點認(rèn)知

    深以為然,所以,工程師應(yīng)該分為Web和App
    的頭像 發(fā)表于 10-10 10:08 ?2625次閱讀

    Web工程師是什么

    工程師(Full-Stack Engineer),是一個在IT行業(yè)圈子里越來越熱門的話題,無論是像Facebook這樣的大型公司,還是剛剛起步的初創(chuàng)公司,都開始招募
    的頭像 發(fā)表于 01-26 10:57 ?1.2w次閱讀

    工程師的定義及價值

    (Full Stack)工程師,也可以叫工程師,無論是前端知識,還是后端架構(gòu)你都要了解。甚至有些調(diào)皮的程序員這樣理解
    的頭像 發(fā)表于 03-21 10:47 ?3237次閱讀

    什么是工程師 自己是否應(yīng)該成為一名工程師

    你常常聽說“工程師”這個叫法吧,不過這到底表示什么意思呢,你覺得自己應(yīng)該成為一名工程師
    的頭像 發(fā)表于 03-21 11:00 ?3391次閱讀

    什么是工程師

    工程師(Full-Stack Engineer):一個能處理數(shù)據(jù)、服務(wù)器、系統(tǒng)工程和客戶端的所有工作的
    的頭像 發(fā)表于 05-31 16:14 ?2.6w次閱讀

    全面了解工程師

    最近有好多網(wǎng)友問我關(guān)于工程師的事情,從大家的口氣中,能聽出大家都認(rèn)為工程師是一個非常高大
    的頭像 發(fā)表于 08-28 16:13 ?2709次閱讀

    工程師與普通工程師的區(qū)別

    前端工程師,后端工程師以及工程師都做什么?各自的薪水狀況又如何?
    的頭像 發(fā)表于 09-02 15:40 ?5789次閱讀

    工程師真的不全

    工程師是指掌握多種技能,并能利用多種技能獨立完成產(chǎn)品的人,也叫工程師(同時具備前端和后臺能力),英文Full Stack engin
    的頭像 發(fā)表于 09-17 11:08 ?1998次閱讀

    真的有開發(fā)工程師

    工程師是他們最細(xì)化的工程師,同時也是價值最大的,
    的頭像 發(fā)表于 09-17 11:34 ?3236次閱讀

    為什么工程師會存在爭議

    如何成為一名工程師(full stack developer)?互聯(lián)網(wǎng)最熱的話題之一。LinkedIn, Facebook上標(biāo)榜自己是
    的頭像 發(fā)表于 10-11 16:58 ?3610次閱讀

    基于Rust的Log日志介紹

    了一種簡單的方法來實現(xiàn)日志記錄,本文將介紹如何使用Rust的Log作為日志門面,并結(jié)合env_logger和log4rs兩個
    的頭像 發(fā)表于 09-19 14:49 ?3997次閱讀