【问题标题】:Read filtered log cat(Programmatically)?读取过滤的日志猫(以编程方式)?
【发布时间】:2012-02-28 19:25:12
【问题描述】:

如何读取过滤后的日志 cat whereLevel is Warning?

这就是我所知道的......

logcat = Runtime.getRuntime().exec(new String[]{"logcat", "-d"});

br = new BufferedReader(new InputStreamReader(logcat.getInputStream()),4*1024);
String line;
  final StringBuilder log = new StringBuilder();
  String separator = System.getProperty("line.separator"); 
    while ((line = br.readLine()) != null)
     {
       log.append(line);
         log.append(separator);
}

【问题讨论】:

  • 嘿……你找到解决办法了吗??

标签: android logcat log-level


【解决方案1】:

-s 标志可让您根据标签和级别 e、w、d、v 过滤 logcat 输出,以便您可以尝试修改您的行。

logcat = Runtime.getRuntime().exec(new String[]{"logcat", "-d","-s","*:w"});

【讨论】:

  • 当我使用 -s 时,缓冲阅读器在阅读前两行后结束。
【解决方案2】:
if (line.contains("WARN")) {
// ...
}

【讨论】:

    【解决方案3】:

    您可以像下面的代码一样轻松过滤要编写的行:

      while ((line = bufferedReader.readLine()) != null) {
                if(line.contains("OkHttp")){
                log.append(line.substring(line.indexOf("OkHttp")));
                log.append('\n');}
                else{continue;}
            }
    

    【讨论】:

      【解决方案4】:
       try {
                        Process process = Runtime.getRuntime().exec("logcat -d");
                        BufferedReader bufferedReader = new BufferedReader(
                        new InputStreamReader(process.getInputStream()));
      
                        StringBuilder log=new StringBuilder();
                        String line = "";
                        while ((line = bufferedReader.readLine()) != null) {
                          log.append(line);
                        }
                        TextView tv = (TextView)findViewById(R.id.textView1);
                        tv.setText(log.toString());
                      } catch (IOException e) {
                      }
      

      希望你能得到你想要的......

      【讨论】:

      • 上面写的代码有区别吗??我问如何过滤我正在阅读的那个 LOGCAT? WHERE 级别级别 = Level.WARNING;
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-13
      • 1970-01-01
      • 1970-01-01
      • 2016-09-06
      • 1970-01-01
      相关资源
      最近更新 更多