logback-android使用

最近看到其它部门招人,都是川大刚毕业的本科生,相对还是比较优秀的,就是有一个问题,就是没有专业技能,找一些策划或新闻编辑之类的工作,竟争比较大,公司也不是很乐意收,因为多一个不多,少一个不少。一个人再有潜力,没有可以发展的地方,也就慢慢落后了。所以说,读书的时候还是要学习一点技能的。如果是刚毕业的川大计算机的学生,只要稍微有点程序经验,我们这里也是乐意招的,这就是专业和不专业的区别。说多了,下面开始记一个我在项目中用logback-android的一点流水账。

 写android程序,难免要记录点日志什么的,这个应该是必须的模块吧。在android下,就我知道,logback-android还是一个比较好的日志库,配合使用slf4j,用起来还是可以。我在程序中用logback-android-1.1.1-3.jar和slf4j-api-1.7.6.jar。和用ADT的不同,我用android studio 1.1.0版本,就在app\src\main目录下新建一个文件夹assets,下面放一个文件logback.xml,内容如下:

<configuration debug="true">
    <property name="LOG_DIR" value="/mnt/sdcard/ICL" />

    <!-- Create a logcat appender -->
    <appender name="LOG_CAT" class="ch.qos.logback.classic.android.LogcatAppender">
        <encoder>
            <pattern>%msg</pattern>
        </encoder>
    </appender>

    <!-- Rolling Appender -->
    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!-- File location -->
        <file>${LOG_DIR}/log.txt</file>

        <!-- Only log error messages to log file --> 
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>DEBUG</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>ACCEPT</onMismatch>
        </filter>

        <!-- Rolling Policy -->     
        <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
            <fileNamePattern>${LOG_DIR}/log.%i.txt</fileNamePattern>
            <minIndex>1</minIndex>
            <maxIndex>1</maxIndex>
        </rollingPolicy>

        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
            <maxFileSize>5MB</maxFileSize>
        </triggeringPolicy>

        <!-- Message encoder -->
        <encoder>
            <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{35} - %msg%n</pattern>
        </encoder>
    </appender>

    <!-- Log level - change this to ERROR on release -->
    <root level="DEBUG">
        <appender-ref ref="LOG_CAT"/>
        <appender-ref ref="FILE" />
    </root>
</configuration>


相对来讲还是比较简单,不解释了。以后遇到使用logback-android的时候,知道assets目录放到那里就可以了。我们使用的时候要引入包

import org.slf4j.LoggerFactory;

private org.slf4j.Logger log_;

log_ = LoggerFactory.getLogger(WorkService.class);
log_.info("推送线程开始启动");

还是简单,以后不用自己动手写日志类了,直接用开源的就可以。假如你水平可以,直接能向开源贡献源代码就更好了。





你可能感兴趣的:(logback-android使用)