日志封装

目前使用的手机不支持显示d和v的log,只能支持显示e、w、i日志,以下是我对log的封装,使用更加方便。

log当中增加当前时间显示,增加开关显示或者隐藏整个log,根据标签或者类别来设置显示或者隐藏log。

public class MyLogcatUtil {

    private static MyLogcatUtil instance = new MyLogcatUtil();

    private String myTag = "myTag";

    private boolean isShowE = true;

    private boolean isShowI = true;

    private boolean isShowW = true;

    private boolean isShow = true;

    private Map<String,String> notShowTagList;

    private MyLogcatUtil(){
        notShowTagList = new HashMap<String,String>();
    }

    public static MyLogcatUtil getInstance(){
        return instance;
    }

    public void elog(String tag , String content){
        if(!isShow){
            return ;
        }
        if(notShowTagList.get(tag)!=null){
            return;
        }
        if(isShowE){
            Log.e(myTag+tag,getTime()+content);
        }
    }

    public void ilog(String tag , String content){
        if(!isShow){
            return ;
        }
        if(notShowTagList.get(tag)!=null){
            return;
        }
        if(isShowI){
            Log.i(myTag+tag,getTime()+content);
        }
    }

    public void wlog(String tag , String content){
        if(!isShow){
            return ;
        }
        if(notShowTagList.get(tag)!=null){
            return;
        }
        if(isShowW){
            Log.w(myTag+tag,getTime()+content);
        }
    }

    public boolean isShowE() {
        return isShowE;
    }

    public void setShowE(boolean showE) {
        isShowE = showE;
    }

    public boolean isShowI() {
        return isShowI;
    }

    public void setShowI(boolean showI) {
        isShowI = showI;
    }

    public String getMyTag() {
        return myTag;
    }

    public void setMyTag(String myTag) {
        this.myTag = myTag;
    }

    public boolean isShowW() {
        return isShowW;
    }

    public void setShowW(boolean showW) {
        isShowW = showW;
    }

    public boolean isShow() {
        return isShow;
    }

    public void setShow(boolean show) {
        isShow = show;
    }

    public void addNotShowTag(String tag){
        this.notShowTagList.put(tag,tag);
    }

    public String getTime(){
        Date date=new Date();
        DateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String time=format.format(date);
        return time;
    }

}

采用单例模式实现,确保设置显示或者隐藏对于整个日志输出有效。

时间: 2024-12-17 11:04:18

日志封装的相关文章

自动化框架--log日志封装

一: 封装log模块, 在自动化测试中日志输出,在配置文件中配置需输出的位置 ,  1为输出, 0不输出. 1,console_output_on = 1 输出到控制台 2,file_output_on =1 输出到txt文件中 configparser 模块可以从配置文件中获取数据 Log.py 1 import logging 2 import sys 3 import configparser 4 5 class Log: 6 def __init__(self): 7 pass 8 9

python3+requests接口自动化-日志封装

1.logger.py这个文件放到common目录下,封装日志文件的读取 2.日志保存到logs文件夹 3.封装代码 1 import logging 2 import os 3 import time 4 5 6 # log_path是日志存放路径地址 7 get_path = os.path.dirname(os.path.abspath(__file__)) 8 log_path = os.path.join(os.path.dirname(get_path),"log") 9

Java 日志框架终极教程

概述 对于现代的 Java 应用程序来说,只要被部署到真实的生产环境,其日志的重要性就是不言而喻的,很难想象没有任何日志记录功能的应用程序被运行于生产环境中.日志 API 所能提供的功能是多种多样的,包括记录程序运行时产生的错误信息.状态信息.调试信息和执行时间信息等.在生产环境中,日志是查找问题来源的重要依据,应用程序运行时的产生的各种重要信息,都应该通过日志 API 来进行记录. 很多Java开发人员习惯于使用 System.out.println.System.err.println 以及

2015第30周四Java日志组件

Java 日志 API 从功能上来说,日志 API 本身所需求的功能非常简单,只需要能够记录一段文本即可.API 的使用者在需要进行记录时,根据当前的上下文信息构造出相应的文本信息,调用 API 完成记录.一般来说,日志 API 由下面几个部分组成: 记录器(Logger):日志 API 的使用者通过记录器来发出日志记录请求,并提供日志的内容.在记录日志时,需要指定日志的严重性级别.当 程序中需要记录日志时,首先需要获取一个日志记录器对象.一般的日志记录 API 都提供相应的工厂方法来创建记录器

Flume NG源码分析(五)使用ThriftSource通过RPC方式收集日志

上一篇说了利用ExecSource从本地日志文件异步的收集日志,这篇说说采用RPC方式同步收集日志的方式.笔者对Thrift比较熟悉,所以用ThriftSource来介绍RPC的日志收集方式. 整体的结构图如下: 1. ThriftSource包含了一个Thrift Server,以及一个Thrift Service服务的实现.这里的Thrift Service是由ThriftSourceProtocol定义 2. 应用程序调用Thrift Service的客户端,以RPC的方式将日志发送到Th

web自动化针对PO模式进行二次封装之 basepage

在 PO 模式当中, 我们做到了 页面对象 与 测试用例 的 分离,但在页面对象编写时,我们仍然还有优化的空间.页面对象有一些共同的基本操作 ,可以封装起来,并可以在基本操作当中加上 日志 和 异常截图 的处理.比如说我们在查找元素时,都需要等待,在PO模式当中, 需要都写上 等待和查找元素,那么就可以将其封装起来,包括其它的一些比如:文本获取.元素属性获取.鼠标操作.窗口切换.iframe切换. alert弹框关闭. 文件上传.下拉框选择..... 当脚本运行的过程中,出现了用例失败,我们希望

logging 模块和日志

目录 logging 模块和日志 基础版日志 进阶版日志 类封装版日志 logging 模块和日志 logging 也就是日志模块,其主要作用于有: 记录程序运行的状态(时间,文件名,报错行数,错误信息): 用户的喜好(分析用户的一些喜好和操作): 银行(账户流水). 日志一共分为五个级别: 序号 错误名 含义 级别 1 debug 调试 10 2 info 信息 20 3 warning 警告 30 4 error 错误 40 5 critical 危险 50 一般情况下,日志默认报告级别在

RuPengWang项目

项目 Day1------------------------- 说明:建外键约束.ashx+Razor RupengWang创建三个类库Model DAL BLL后台:RupengWang.Admin 前台:RupengWang.Front 建一个后台管理员的表T_AdminUsers(Id UserName Password)打开动软,生成三层代码 (报错,是因为UAC是不用随意的写入数据,方法是以管理员运行,没有就去属性兼容性中找),(工具-选项-配置-命令规则),(新建net项目-工厂模

(四)整合spring cloud云服务架构 - particle-common-framework代码介绍

上一篇我们介绍了spring cloud云服务架构 - particle云架构代码结构,简单的按照几个大的部分去构建代码模块,让我们来回顾一下: 第一部分: 针对于普通服务的基础框架封装(entity.dao.service.controller.api)等 第二部分: spring cloud通用微服务项目,可以监控左右微服务,当然,本身自己也是微服务. 第三部分: 针对于框架内所有组件的封装,可以植入任何的模块项目中. 第四部分: 自身项目的微服务业务,比如:会员模块.消息模块.资金模块.订