檔案系統日誌保存程式
public class FileSystemLogSaver
extends Object
implements ILogSaver
java.lang.Object | |
↳ | com.android.tradefed.result.FileSystemLogSaver |
將日誌儲存到檔案系統。
概括
公共構造函數 | |
---|---|
FileSystemLogSaver () |
公共方法 | |
---|---|
LogFile | getLogReportDir () 取得包含保存日誌的目錄的路徑和/或 URL 的 |
void | invocationEnded (long elapsedTime) 報告呼叫已終止,無論是成功還是由於某些錯誤情況。 |
void | invocationStarted ( IInvocationContext context) 報告測試調用的開始。 另外,在 |
LogFile | saveLogData (String dataName, LogDataType dataType, InputStream dataStream) 保存日誌資料。 如果 |
LogFile | saveLogFile (String dataName, LogDataType dataType, File fileToLog) 保存日誌檔。 |
void | setCompressFiles (boolean compress) |
受保護的方法 | |
---|---|
File | generateLogReportDir ( IBuildInfo buildInfo, File reportDir) 允許子類別自訂產生路徑邏輯的公開方法。 |
公共構造函數
檔案系統日誌保存程式
public FileSystemLogSaver ()
公共方法
呼叫結束
public void invocationEnded (long elapsedTime)
報告呼叫已終止,無論是成功還是由於某些錯誤情況。
呼叫ITestInvocationListener#invocationEnded(long)
後,將由 TradeFederation 框架自動呼叫。
參數 | |
---|---|
elapsedTime | long :呼叫所花費的時間(以毫秒為單位) |
調用開始
public void invocationStarted (IInvocationContext context)
報告測試調用的開始。
在呼叫ITestInvocationListener#invocationStarted(IInvocationContext)
之前,將由 TradeFederation 框架自動呼叫。
另外,在report-dir/[branch/]build-id/test-tag/unique_dir
下建立一個唯一的檔案系統目錄用於保存日誌。如果建立目錄失敗,會將日誌寫入本機檔案系統上的暫存目錄。
參數 | |
---|---|
context | IInvocationContext :有關呼叫的資訊。 |
保存日誌數據
public LogFile saveLogData (String dataName, LogDataType dataType, InputStream dataStream)
保存日誌資料。
每當呼叫ITestLogger.testLog(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource)
時,TradeFederation 框架會自動呼叫。它也可以用作保存附加日誌資料的輔助方法。
根據實施和策略,日誌可能以壓縮形式保存。日誌也可能儲存在 Tradefed 無法存取的位置。
如果LogDataType#isCompressed()
對於dataType
傳回 false 並且設定了compressed-files
,則將壓縮並儲存日誌文件,否則,流將以未壓縮的方式儲存。
參數 | |
---|---|
dataName | String :資料的String 描述性名稱。例如“device_logcat” |
dataType | LogDataType :檔案的LogDataType 。 |
dataStream | InputStream :資料的ERROR(/InputStream) 。 |
退貨 | |
---|---|
LogFile | LogFile 包含已儲存檔案的路徑和 URL。 |
保存日誌文件
public LogFile saveLogFile (String dataName, LogDataType dataType, File fileToLog)
保存日誌檔。
每當呼叫ITestLogger.testLog(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource)
並且流引用檔案時,TradeFederation 框架都會自動呼叫。
根據實施和策略,日誌可能以壓縮形式保存。日誌也可能儲存在 Tradefed 無法存取的位置。
參數 | |
---|---|
dataName | String :資料的String 描述性名稱。例如“device_logcat” |
dataType | LogDataType :檔案的LogDataType 。 |
fileToLog | File :要儲存的ERROR(/File) 。 |
退貨 | |
---|---|
LogFile | LogFile 包含已儲存檔案的路徑和 URL。 |
設定壓縮文件
public void setCompressFiles (boolean compress)
參數 | |
---|---|
compress | boolean |
受保護的方法
產生日誌報告目錄
protected File generateLogReportDir (IBuildInfo buildInfo, File reportDir)
允許子類別自訂產生路徑邏輯的公開方法。
參數 | |
---|---|
buildInfo | IBuildInfo : IBuildInfo |
reportDir | File :報告目錄的ERROR(/File) 。 |
退貨 | |
---|---|
File | 建立的目錄。 |