logcat 的使用

logcat的使用

端上日志记录可以使用工具: logger、LogUtils、timber等工具进行日志美化

(一)基础用法与输出


直接终端打印日志

adb logcat

终端打印日志并输出

adb logcat > $(date "+%Y%m%d_%H:%M:%S").log

清除缓存信息

adb logcat -c

I/SDK    ( 1306): [Server 5.2.0][2023-02-18 13:50:01.85563][DEBUG][access_cae_local.c:660][handle_local_request][ret:0]
I/SDK    ( 1306): [CAE][D][2023-02-18 13:50:01.086766][cae_mqtt_client_publish_1:600][pub(1) msg 0xdac1ee20 120(mqtt id 102) Dev/7864E6E37F6C/Rpt/Attr: {"attrs":[{"humidificationStatus":"false"},{"co2Value":"0"},{"windDirectionVerticalL":"5"},{"selfCleaningStatus":"false"},{"windDirectionVerticalR":"5"},{"targetHumidity":"52"},{"indoorTemperature":"0"},{"freshAirStatus":"false"},{"healthMode":"false"},{"windDirectionHorizontalL":"0"},{"opSrc":"0"},{"windSpeedR":"5"},{"windSpeedL":"5"},{"screenDisplayStatus":"true"},{"onOffStatus":"false"},{"indoorPM2p5Value":"9"},{"muteStatus":"false"},{"electricHeatingStatus":"false"},{"operationMode":"0"},{"indoorHumidity":"39"},{"humanSensingStatus":"0"},{"errCode":"0"},{"rapidMode":"false"},{"silentSleepStatus":"false"},{"targetTemperature":"26"},{"windDirectionHorizontalR":"0"},{"ErrAckFlag":"false"},{"specialMode":"0"},{"tempUnit":"1"},{"pmvStatus":"false"},{"intelligenceStatus":"false"},{"halfDegreeSettingStatus":"false"},{"10degreeHeatingStatus":"false"},{"echoStatus":"false"}

(二)过滤关键字


"-s"选项 : 设置输出日志的标签, 只显示该标签的日志;

过滤标签

adb logcat -s StateMachine

没过滤的打印信息 I= INFO、 E=ERROR 、D=DEBUG

I/SDK    ( 1306): [Server 5.2.0][2023-02-18 13:59:30.440423][DEBUG][access_cae_local.c:660][handle_local_request][ret:0]
E/StateMachine(  693):  ConnectedState (when=-5ms what=131155 arg1=1!CMD_RSSI_POLL 1 0 "AC" 0c:b5:27:26:aa:48 rssi=-51 f=2412 sc=60 link=65 tx=5.9, 0.0, 0.0  rx=6.9 bcn=0 [on:0 tx:0 rx:0 period:3002] from screen [on:0 period:1662725131] gl hn u24 rssi=-46 ag=0 hr ticks 0,0,0 ls-=0 [56,56,60,60,65] brc=0 lrc=0
E/StateMachine(  693):  L2ConnectedState (when=-6ms what=131155 arg1=1!CMD_RSSI_POLL 1 0 "AC" 0c:b5:27:26:aa:48 rssi=-51 f=2412 sc=60 link=65 tx=5.9, 0.0, 0.0  rx=6.9 bcn=0 [on:0 tx:0 rx:0 period:1] from screen [on:0 period:1662725132] gl hn u24 rssi=-46 ag=0 hr ticks 0,0,0 ls-=0 [56,56,60,60,65] brc=0 lrc=0
E/StateMachine(  693):  get link layer stats 0
D/HW  (  693): enter -->_send_command cmd=IFNAME=wlan0 SIGNAL_POLL
D/wpa_supplicant( 1156): wlan0: Control interface command 'SIGNAL_POLL'

过滤StateMachine后的日志

E/StateMachine(  693): mIsFullScanOngoing: false, mSendScanResultsBroadcast: false
E/StateMachine(  693):  ConnectedState (when=-3ms what=131155 arg1=1!CMD_RSSI_POLL 1 0 "AC" 0c:b5:27:26:aa:48 rssi=-51 f=2412 sc=60 link=65 tx=3.5, 0.0, 0.0  rx=3.5 bcn=0 [on:0 tx:0 rx:0 period:3001] from screen [on:0 period:1662878974] gl hn u24 rssi=-46 ag=0 hr ticks 0,0,0 ls-=0 [56,56,56,56,61] brc=0 lrc=0
E/StateMachine(  693):  L2ConnectedState (when=-3ms what=131155 arg1=1!CMD_RSSI_POLL 1 0 "AC" 0c:b5:27:26:aa:48 rssi=-51 f=2412 sc=60 link=65 tx=3.5, 0.0, 0.0  rx=3.5 bcn=0 [on:0 tx:0 rx:0 period:1] from screen [on:0 period:1662878975] gl hn u24 rssi=-46 ag=0 hr ticks 0,0,0 ls-=0 [56,56,56,56,61] brc=0 lrc=0

(三)根据日志等级进行过滤

日志优先级(priority):
V : Verbose (明细);
D : Debug (调试);
I : Info (信息);
W : Warn (警告);
E : Error (错误);
F : Fatal (严重错误);
S : Silent(最高,啥也不输出)

过滤所有的错误信息 *为shell的关键字,必须要通过\转义

将 Error、Fatal 和 Silent 日志输出。

adb logcat \*:E

这个好像不太好用

adb logcat StateMachine:E

(四)通过Grep 过滤

adb logcat | grep StateMachine

通过grep + 正则匹配

adb logcat | grep "^..Machine"

logcat中筛选多个关键字:

筛选AA,BB,CC关键字: ^(.(AA|BB|CC)).$

adb logcat | grep "^(.(AA|BB|CC)).$"

不想看到AA,BB,CC关键字:

adb logcat | grep "((.*)[(AA|BB|CC)]).*$"

(五)日志加上时间等信息

-v brief (默认)"优先级 / 标签 (进程ID) : 日志信息"
-v tag " 优先级 / 标签 : 日志信息"
-v time 命令, 追加日志的输出时间;
-v thread命令 ,追加日志的输出线程信息
-v threadtime 命令, 追加日志的输出时间和线程信息;

  • 还有更多,请自行搜索
    adb logcat -v threadtime
02-18 14:06:46.062   865   865 E NetworkController: No data sim selected
02-18 14:06:46.062   865   865 D DefaultStatusBarPlmnPlugin: into updateCarrierLabel, slotId=0, isSimInserted=false, isHasSimService=false
02-18 14:06:46.062   865   865 D DefaultStatusBarPlmnPlugin: into updateCarrierLabel, slotId=1, isSimInserted=false, isHasSimService=false
02-18 14:06:46.079   196   196 I SurfaceFlinger: [Built-in Screen (type:0)] fps:9.948966,dur:1105.64,max:126.51,min:72.47

祝你好运

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,033评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,725评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,473评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,846评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,848评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,691评论 1 282
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,053评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,700评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,856评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,676评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,787评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,430评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,034评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,990评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,218评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,174评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,526评论 2 343