下載本文檔
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Trace一、Trace 概述發(fā)現(xiàn),在 SystemServer 中,每啟動(dòng)一個(gè)服務(wù),就會(huì)調(diào)用:其實(shí)traceBeginAndSlog 的定義是:也就是說(shuō),每啟動(dòng)一個(gè)服務(wù)就會(huì)調(diào)用:Trace.traceBegrace.TRACE_TAG_SYSTEM_SERVER, name);try 啟動(dòng)服務(wù)catch (Throwable e) Trace.traceEnd(Trace.TRACE_TAG_SYSTEM_SERVER);那么問(wèn)題來(lái)了,這個(gè) Trace的日志信息,到底在哪里可以查到呢?/*Writes a trace message to indicatet a given section
2、of code hasbegun. Must be followed by a call to link #traceEnd using the sametag.*param traceTag The trace tag.param methodName The method name to appear in the trace.*hide*/public sic void traceBegin(long traceTag, String methodName) if (isTagEnabled(traceTag) 將事件寫(xiě)入系統(tǒng)緩沖區(qū)。 可以使用 Systrace 工具收集和可視化這些事件
3、。此機(jī)制獨(dú)立于 startMethodTracing()提供的方法機(jī)制。 特別地,它使得能夠跨多個(gè)進(jìn)程發(fā)生的事件。有關(guān)使用 Systrace 工具的信息,請(qǐng)參閱使用 Systrace 分析顯示和性能。哈哈,出來(lái)一個(gè)東西 Systrace。等我完了研究下這個(gè) Systrace.Trace.traceBegin二、如何獲取 Trace 的 TAG 消息如何獲取由上知道,Trace 信息可以通過(guò) Streace 來(lái)進(jìn)行查看:.-c 統(tǒng)計(jì)每一系統(tǒng)調(diào)用的所執(zhí)行的時(shí)間,次數(shù)和出錯(cuò)的次數(shù)等.-d 輸出 strace 關(guān)于標(biāo)準(zhǔn)錯(cuò)誤的調(diào)試信息.-f-ff-F由fork 調(diào)用所產(chǎn)生的子進(jìn)程.如果提供-o file
4、name,則所有進(jìn)程的結(jié)果輸出到相應(yīng)的filenamd 中,是各進(jìn)程的進(jìn)程號(hào).嘗試vfork 調(diào)用.在-f 時(shí),vfork 不被.-h 輸出簡(jiǎn)要的幫助信息.-i 輸出系統(tǒng)調(diào)用的指針.-q輸出關(guān)于脫離的消息.-r 打印出相對(duì)時(shí)間關(guān)于,每一個(gè)系統(tǒng)調(diào)用.-t 在輸出中的每一行前加上時(shí)間信息.-tt 在輸出中的每一行前加上時(shí)間信息,微秒級(jí).-ttt 微秒級(jí)輸出,以秒了表示時(shí)間.-T 顯示每一調(diào)用所耗的時(shí)間.-v 輸出所有的系統(tǒng)調(diào)用.一些調(diào)用關(guān)于環(huán)境變量,狀態(tài),輸入輸出等調(diào)用由于使用頻繁,默認(rèn)不輸出.-V 輸出 strace 的版本信息.-x 以十六進(jìn)制形式輸出非標(biāo)準(zhǔn)字符串-xx 所有字符串以十六進(jìn)制形
5、式輸出.-a column寫(xiě)入追蹤信息標(biāo)志著當(dāng)前方法已經(jīng)結(jié)束。必須和 traceBegin 成對(duì)的調(diào)用并且使用同一個(gè) tag.參數(shù):追蹤 tag 和 traceBegin 傳入的要一致。至此為止,明白了里的這兩句代碼是干嘛的:/* Writes trace events to the kernel trace buffer. These trace events can be* collected using the “atrace” program for offlineysis.*/將這些追蹤時(shí)間寫(xiě)入追蹤緩存中。這些追蹤事件可以被“atrace”程序收集起來(lái),進(jìn)行離線(xiàn)分析。/*Writes
6、 a trace message to indicatet the current method has ended.Must be called exactly once for each call to link #traceBegin using the same tag.*param traceTag The trace tag.*hide*/public sic void traceEnd(long traceTag) if (isTagEnabled(traceTag) nativeTraceEnd(traceTag);寫(xiě)入信息這標(biāo)志著要追蹤的代碼已經(jīng)開(kāi)始運(yùn)行。必須在后面調(diào)用 tr
7、aceEnd,并且使用相同的 tag.參數(shù)一:根據(jù)的標(biāo)記 tag;參數(shù)二:在追蹤路徑中顯示的方法名。Trace.traceEndnativeTraceBegraceTag, methodName);設(shè)置返回值的輸出位置.默認(rèn) 為 40.-e expr.指定一個(gè)表達(dá)式,用來(lái)控制如何qualifier=!value1,value2.格式如下:qualifier 只能是 trace,abbrev,vere,raw,signal,read,write 其中之一.value 是用來(lái)限定的符號(hào)或數(shù)字.默認(rèn)的 qualifier 是 trace.感嘆號(hào)是否定符號(hào).例如:-eopen 等價(jià)于 -e trace
8、=open,表示只open 調(diào)用.而-etrace!=open 表示除了 open 以外的其他調(diào)用.有兩個(gè)特殊的符號(hào)all和 none.注意有些s-e tra使用!來(lái)執(zhí)行歷史里令,所以要使用.et指定的系統(tǒng) 調(diào)用.例如:-e trace=open,close,rean,write 表示只這四個(gè)系統(tǒng)調(diào)用.默認(rèn)的為 set=all.只-e trace=file只有關(guān)文件操作的系統(tǒng)調(diào)用.-e trace=pros只有關(guān)進(jìn)程控制的系統(tǒng)調(diào)用.-e trace=network與網(wǎng)絡(luò)有關(guān)的所有系統(tǒng)調(diào)用.-e straignal所有與系統(tǒng)信號(hào)有關(guān)的 系統(tǒng)調(diào)用-e trace=ipc所有與進(jìn)程通訊有關(guān)的系統(tǒng)調(diào)用
9、-e abbrev=set設(shè)定 strace 輸出的系統(tǒng)調(diào)用的結(jié)果集.-v 等與 abbrev=none.默認(rèn)為 abbrev=all.-e raw=set將指 定的系統(tǒng)調(diào)用的參數(shù)以十六進(jìn)制顯示.-e signal=set指定的系統(tǒng)信號(hào).默認(rèn)為 all.如 signal=!SIGIO(或者 signal=!io),表示不-e read=set輸出從指定文件中讀出 的數(shù)據(jù).例如:-e read=3,5-e write=set輸出寫(xiě)入到指定文件中的數(shù)據(jù).-o filename將 strace 的輸出寫(xiě)入文件filename-p指定的進(jìn)程.-s strsize指定輸出的字符串的最大長(zhǎng)度.默認(rèn)為 32
10、.文件名一直全部輸出.-u usernameSIGIO 信號(hào).以u(píng)sername 的UID 和GID 執(zhí)行被令1|RealtekATV:/data/bootchart # strace -husage: strace -CdffhiqrtttTvVwxxy -I n -e expr.-a column -o file -s strsize -P path.-p. / -D -E var=val. -u username PROG ARGSor: strace -cdfw -I n -e expr. -O overhead -S sortby-p. / -D -E var=val. -u use
11、rname PROG ARGSOutput format:-a columnalignment COLUMN for pring syscall results (default 40)-iprinstruction poer at time of syscall-o filesend trace output to FILE instead of stderr-qsuppress messages aboutaching, detaching, etc.-rprrelative timest-s strsizelimit length of prstrings to STRSIZE char
12、s (default 32)-tprabsolute timest-ttprabsolute timestwith usecs-Tprtime spent in each syscall-xprnon-ascii strings in hex-xxprall strings in hex-yprpaths assoted with file descriptor arguments-yyprip:port pairs assoted with socket file descriptorsSistics:-ccount time, calls, and errors for each sysc
13、all and report summary-Clike -c but also prregular output-O overheadset overhead for tracing syscalls to OVERHEAD usecs-S sortbysort syscall counts by: time, calls, name, nothing (default time)-wsummarise syscall latency (default is system time)Filtering:-e expra qualifying expres: option=!all or op
14、tion=!val1,val2.options:trace, abbrev, vere, raw, signal, read, write-P pathtrace acses to pathTracing:-b execvedetach on execve syscall-Drun tracros as a detached grandchild, not as parent-ffollow forks-fffollow forks with outputo separate files-Ierruptible1:no signals are blocked2:fatal signals ar
15、e blocked while decoding syscall (default)3:fatal signals are always blocked (default if -o FILE PROG)4:fatal signals and SIGTSTP (Z) are always blocked(useful to make strace -o FILE PROG not stop on Z)Startup:-E varremove var from the environment ford-E var=valput var=valhe environment ford-ptrace pros with pros id, may be repeated-u usernamerund as username handling setuid and/or setgidMiscellaneous:-denable debug output to stderr-vvere mode: prunabbreviated argv, s, termios, etc. args-hprhelp message-Vprver網(wǎng)上沒(méi)有這個(gè)工具檢
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度輔導(dǎo)班家長(zhǎng)學(xué)生綜合素質(zhì)提升協(xié)議
- 二零二五年度違約賠償協(xié)議書(shū):新能源儲(chǔ)能技術(shù)研發(fā)違約賠償及市場(chǎng)推廣合同
- 二零二五年度酒莊酒水營(yíng)銷(xiāo)策劃合作協(xié)議
- 二零二五年度酒店餐飲托管與品牌推廣協(xié)議
- 二零二五年度銀行承兌匯票擔(dān)保業(yè)務(wù)合作協(xié)議
- 二零二四年度智能化房地產(chǎn)廣告設(shè)計(jì)委托協(xié)議3篇
- 二零二五年度企業(yè)外聘講師團(tuán)隊(duì)定制培訓(xùn)協(xié)議
- 二零二四年網(wǎng)絡(luò)安全咨詢(xún)服務(wù)外包服務(wù)安全管理協(xié)議3篇
- 安全監(jiān)控中的惡意流量識(shí)別與阻斷考核試卷
- 2025年土地交易居間服務(wù)專(zhuān)業(yè)合同范本
- 2024中考考前地理沖刺卷及答案(含答題卡)
- 多子女贍養(yǎng)老人協(xié)議書(shū)范文
- 安踏運(yùn)動(dòng)品牌營(yíng)銷(xiāo)策略研究
- 彩票市場(chǎng)銷(xiāo)售計(jì)劃書(shū)
- 骨科抗菌藥物應(yīng)用分析報(bào)告
- 支付行業(yè)反洗錢(qián)與反恐怖融資
- 百詞斬托福詞匯excel版本
- 基礎(chǔ)設(shè)施綠色施工技術(shù)研究
- 寶鋼BQB 481-2023全工藝?yán)滠堉蓄l無(wú)取向電工鋼帶文件
- 車(chē)輛定損情況確認(rèn)書(shū)范本
- 2022年高考湖南卷生物試題(含答案解析)
評(píng)論
0/150
提交評(píng)論