如何在appium中获取带有特定标签的ADB logcat?

How to get ADB logcat with specific tag in appium?

我想通过 APPIUM 获取特定标签(例如:testing_aws)的 ADB logcat。实际上我是直接从控制台完成的,如下所示

可以先获取所有日志

List<LogEntry> logEntries = driver.manage().logs().get("logcat").filter(Level.ALL);

然后您可以过滤您的日志。

for (LogEntry logEntry : logEntries) {
    if (logEntry.getMessage().contains("testing_aws")) {
        System.out.println(logEntry.getMessage());
    }
}

如果要在文件中添加过滤后的日志,可以按如下方式进行:

List<LogEntry> logEntries = driver.manage().logs().get("logcat").filter(Level.ALL);
File logFile = new File("path to store file"+"filename"+".txt");
logFile.getParentFile().mkdirs();

PrintWriter log_file_writer = new PrintWriter(logFile);
for (LogEntry logEntry : logEntries) {
    if (logEntry.getMessage().contains("testing_aws")) {
        log_file_writer.println(logEntry);
    }
}
log_file_writer.flush();