LogFileSaver
public
class
LogFileSaver
extends Object
| java.lang.Object | |
| ↳ | com.android.tradefed.result.LogFileSaver |
用于 ITestInvocationListener 的辅助类,可将日志数据保存到文件中
摘要
公共构造函数 | |
|---|---|
LogFileSaver(IBuildInfo buildInfo, File rootDir)
创建 |
|
LogFileSaver(IBuildInfo buildInfo, File rootDir, Integer logRetentionDays)
创建 |
|
LogFileSaver(IBuildInfo buildInfo, File rootDir, Integer logRetentionDays, Boolean containInvDir)
创建 |
|
LogFileSaver(File rootDir)
一个替代的 |
|
公共方法 | |
|---|---|
File
|
createCompressedLogFile(String dataName, LogDataType origDataType)
创建一个空文件,用于存储压缩的日志数据。 |
OutputStream
|
createGZipLogStream(File logFile)
创建输出流以将 GZIP 压缩的数据写入文件 |
InputStream
|
createInputStreamFromFile(File logFile)
用于创建输入流以读取给定日志文件内容的辅助方法 TODO:考虑将此方法移至其他位置。 |
File
|
getFileDir()
获取用于存储文件的目录。 |
List<String>
|
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 |
IBuildInfo:IBuildInfo |
rootDir |
File:根文件系统路径 |
LogFileSaver
public LogFileSaver (IBuildInfo buildInfo, File rootDir, Integer logRetentionDays)
创建 LogFileSaver。
在 rootDir/branch/build_id/testTag/uniqueDir 中构建唯一的文件系统目录
如果目录创建失败,将使用临时目录。
| 参数 | |
|---|---|
buildInfo |
IBuildInfo:IBuildInfo |
rootDir |
File:根文件系统路径 |
logRetentionDays |
Integer:如果提供,系统会将一个“.retention”文件写入日志目录,其中包含的时间戳等于当前时间 + logRetentionDays。外部清理脚本可以使用此文件来确定何时删除日志目录。 |
LogFileSaver
public LogFileSaver (IBuildInfo buildInfo, File rootDir, Integer logRetentionDays, Boolean containInvDir)
创建 LogFileSaver。
在 rootDir/branch/build_id/testTag/uniqueDir 中构建唯一的文件系统目录
如果目录创建失败,将使用临时目录。
| 参数 | |
|---|---|
buildInfo |
IBuildInfo:IBuildInfo |
rootDir |
File:根文件系统路径 |
logRetentionDays |
Integer:如果提供,系统会将一个“.retention”文件写入日志目录,其中包含的时间戳等于当前时间 + logRetentionDays。外部清理脚本可以使用此文件来确定何时删除日志目录。 |
containInvDir |
Boolean |
公共方法
createCompressedLogFile
public File createCompressedLogFile (String dataName,
LogDataType origDataType)创建一个空文件,用于存储压缩的日志数据。
| 参数 | |
|---|---|
dataName |
String:要存储的数据的描述性名称。String |
origDataType |
LogDataType:要存储的 LogDataType 的类型 |
| 返回 | |
|---|---|
File |
File |
| 抛出 | |
|---|---|
IOException |
如果无法创建日志文件 |
createGZipLogStream
public OutputStream createGZipLogStream (File logFile)
创建输出流以将 GZIP 压缩的数据写入文件
| 参数 | |
|---|---|
logFile |
File:要写入的 File |
| 返回 | |
|---|---|
OutputStream |
OutputStream 来压缩数据并将其写入文件。
此直播结束后 |
| 抛出 | |
|---|---|
IOException |
如果无法生成数据流 |
createInputStreamFromFile
public InputStream createInputStreamFromFile (File logFile)
用于创建输入流以读取给定日志文件内容的辅助方法
TODO:考虑将此方法移至其他位置。暂时放置在此处,以便此类用户进行模拟。
| 参数 | |
|---|---|
logFile |
File:要读取的 File |
| 返回 | |
|---|---|
InputStream |
用于读取文件数据的缓冲 InputStream。调用者必须在完成时调用此流 |
| 抛出 | |
|---|---|
IOException |
如果无法生成数据流 |
getInvocationLogPathSegments
public List<String> getInvocationLogPathSegments ()
| 返回 | |
|---|---|
List<String> |
唯一调用日志路径段。 |
saveAndGZipLogData
public File saveAndGZipLogData (String dataName,
LogDataType dataType,
InputStream dataStream)保存日志数据并根据需要将其压缩为 gzip 文件
| 参数 | |
|---|---|
dataName |
String:数据的描述性名称(String)。 |
dataType |
LogDataType:文件的 LogDataType。日志数据(即 LogDataType.isCompressed() 为 true) |
dataStream |
InputStream:数据的 InputStream。 |
| 返回 | |
|---|---|
File |
生成的数据文件 |
| 抛出 | |
|---|---|
IOException |
如果无法生成日志文件 |
saveAndGZipLogFile
public File saveAndGZipLogFile (String dataName,
LogDataType dataType,
File fileToLog)保存日志数据并根据需要将其压缩为 gzip 文件
| 参数 | |
|---|---|
dataName |
String:数据的描述性名称(String)。 |
dataType |
LogDataType:文件的 LogDataType。日志数据(即 LogDataType.isCompressed() 为 true) |
fileToLog |
File:要保存的 File |
| 返回 | |
|---|---|
File |
生成的数据文件 |
| 抛出 | |
|---|---|
IOException |
如果无法生成日志文件 |
saveLogData
public File saveLogData (String dataName,
LogDataType dataType,
InputStream dataStream)将日志数据保存到文件
| 参数 | |
|---|---|
dataName |
String:数据的描述性名称(String)。 |
dataType |
LogDataType:文件的 LogDataType。 |
dataStream |
InputStream:数据的 InputStream。 |
| 返回 | |
|---|---|
File |
生成的数据文件 |
| 抛出 | |
|---|---|
IOException |
如果无法生成日志文件 |
saveLogDataRaw
public File saveLogDataRaw (String dataName,
String ext,
InputStream dataStream)将原始数据保存到文件
| 参数 | |
|---|---|
dataName |
String:数据的描述性名称(String)。 |
ext |
String:日期的扩展名 |
dataStream |
InputStream:数据的 InputStream。 |
| 返回 | |
|---|---|
File |
生成的数据文件 |
| 抛出 | |
|---|---|
IOException |
如果无法生成日志文件 |
saveLogFile
public File saveLogFile (String dataName,
LogDataType dataType,
File fileToLog)保存给定的日志文件
| 参数 | |
|---|---|
dataName |
String:数据的描述性名称(String)。 |
dataType |
LogDataType:文件的 LogDataType。 |
fileToLog |
File:要记录的 File |
| 返回 | |
|---|---|
File |
生成的数据文件 |
| 抛出 | |
|---|---|
IOException |
如果无法生成日志文件 |