LogFileSaver

public class LogFileSaver
extends Object

java.lang.Object
   ↳ com.android.tradefed.result.LogFileSaver


ITestInvocationListener 的輔助程式,可將記錄資料儲存到檔案

摘要

公用建構函式

LogFileSaver(IBuildInfo buildInfo, File rootDir)

建立 LogFileSaver

LogFileSaver(IBuildInfo buildInfo, File rootDir, Integer logRetentionDays)

建立 LogFileSaver

LogFileSaver(File rootDir)

備用 LogFileSaver 建構函式,只會使用指定的目錄做為記錄儲存目錄。

公用方法

File createCompressedLogFile(String dataName, LogDataType origDataType)

建立空白檔案,用於儲存壓縮的記錄資料。

OutputStream createGZipLogStream(File logFile)

建立輸出串流,將 GZIP 壓縮資料寫入檔案

InputStream createInputStreamFromFile(File logFile)

輔助方法,用於建立輸入串流,以便讀取指定記錄檔的內容

TODO:請考慮將此方法移至其他位置。

File getFileDir()

取得用來儲存檔案的目錄。

getInvocationLogPathSegments()
File saveAndGZipLogData(String dataName, LogDataType dataType, InputStream dataStream)

儲存及壓縮記錄資料 (如有必要) 至 gzip 檔案

File saveAndGZipLogFile(String dataName, LogDataType dataType, File fileToLog)

儲存及壓縮記錄資料 (如有必要) 至 gzip 檔案

File saveLogData(String dataName, LogDataType dataType, InputStream dataStream)

將記錄資料儲存到檔案

File saveLogDataRaw(String dataName, String ext, InputStream dataStream)

將原始資料儲存至檔案

File saveLogFile(String dataName, LogDataType dataType, File fileToLog)

儲存指定的記錄檔案

公用建構函式

LogFileSaver

public LogFileSaver (IBuildInfo buildInfo, 
                File rootDir)

建立 LogFileSaver

在 rootDir/branch/build_id/uniqueDir 中建構專屬的檔案系統目錄

參數
buildInfo IBuildInfoIBuildInfo

rootDir File:根目錄檔案系統路徑

LogFileSaver

public LogFileSaver (IBuildInfo buildInfo, 
                File rootDir, 
                Integer logRetentionDays)

建立 LogFileSaver

在 rootDir/branch/build_id/testTag/uniqueDir 中建構專屬的檔案系統目錄

如果目錄建立作業失敗,系統會使用臨時目錄。

參數
buildInfo IBuildInfoIBuildInfo

rootDir File:根目錄檔案系統路徑

logRetentionDays Integer:如果提供此參數,系統會將「.retention」檔案寫入記錄目錄,其中包含與「logRetentionDays」相加的目前時間的時間戳記。外部清理指令碼可使用這個檔案,判斷何時刪除記錄目錄。

LogFileSaver

public LogFileSaver (File rootDir)

備用 LogFileSaver 建構函式,只會使用指定的目錄做為記錄儲存目錄。

公用方法

createCompressedLogFile

public File createCompressedLogFile (String dataName, 
                LogDataType origDataType)

建立空白檔案,用於儲存壓縮的記錄資料。

參數
dataName String:要儲存的資料的 String 描述性名稱。

origDataType LogDataType:要儲存的 LogDataType 類型

傳回
File ERROR(/File)

擲回
如果無法建立記錄檔案

createGZipLogStream

public OutputStream createGZipLogStream (File logFile)

建立輸出串流,將 GZIP 壓縮資料寫入檔案

參數
logFile File:要寫入的 ERROR(/File)

傳回
OutputStream ERROR(/OutputStream) 壓縮並將資料寫入檔案。完成時,請關閉這個串流

擲回
如果無法產生串流

createInputStreamFromFile

public InputStream createInputStreamFromFile (File logFile)

輔助方法,用於建立輸入串流,以便讀取指定記錄檔的內容

TODO:請考慮將此方法移至其他位置。目前放在此處,方便使用者模擬這個類別。

參數
logFile File:要讀取的 ERROR(/File)

傳回
InputStream 使用緩衝的 ERROR(/InputStream) 讀取檔案資料。呼叫端必須在完成時呼叫此串流

擲回
如果無法產生串流

getFileDir

public File getFileDir ()

取得用來儲存檔案的目錄。

傳回
File ERROR(/File) 目錄

getInvocationLogPathSegments

public  getInvocationLogPathSegments ()

傳回
不重複的叫用記錄路徑區段。

saveAndGZipLogData

public File saveAndGZipLogData (String dataName, 
                LogDataType dataType, 
                InputStream dataStream)

儲存及壓縮記錄資料 (如有必要) 至 gzip 檔案

參數
dataName String:資料的 String 描述性名稱。

dataType LogDataType:檔案的 LogDataType。記錄資料 (例如 LogDataType.isCompressed()true)

dataStream InputStream:資料的 ERROR(/InputStream)

傳回
File 產生資料的檔案

擲回
如果無法產生記錄檔

saveAndGZipLogFile

public File saveAndGZipLogFile (String dataName, 
                LogDataType dataType, 
                File fileToLog)

儲存及壓縮記錄資料 (如有必要) 至 gzip 檔案

參數
dataName String:資料的 String 描述性名稱。

dataType LogDataType:檔案的 LogDataType。記錄資料 (例如 LogDataType.isCompressed()true)

fileToLog File:要儲存的 ERROR(/File)

傳回
File 產生資料的檔案

擲回
如果無法產生記錄檔

saveLogData

public File saveLogData (String dataName, 
                LogDataType dataType, 
                InputStream dataStream)

將記錄資料儲存到檔案

參數
dataName String:資料的 String 描述性名稱。

dataType LogDataType:檔案的 LogDataType

dataStream InputStream:資料的 ERROR(/InputStream)

傳回
File 產生資料的檔案

擲回
如果無法產生記錄檔

saveLogDataRaw

public File saveLogDataRaw (String dataName, 
                String ext, 
                InputStream dataStream)

將原始資料儲存至檔案

參數
dataName String:資料的 String 描述性名稱。

ext String:日期的擴充功能

dataStream InputStream:資料的 ERROR(/InputStream)

傳回
File 產生資料的檔案

擲回
如果無法產生記錄檔

saveLogFile

public File saveLogFile (String dataName, 
                LogDataType dataType, 
                File fileToLog)

儲存指定的記錄檔案

參數
dataName String:資料的 String 描述性名稱。

dataType LogDataType:檔案的 LogDataType

fileToLog File:要記錄的 ERROR(/File)

傳回
File 產生資料的檔案

擲回
如果無法產生記錄檔