android log4j slf4j,浅谈log4j、slf4j日志框架集成应用

2023-05-16

(一)简单阐述

简单的说明一下,日志框架log4j、slf4j的关系。slf4j就好比是一个interface接口,它并不具体进行日志的存储。log4j就好像是一个实现类。两者之间通过slf4j-log4j进行搭桥关联。

(二)搭配好处

1):如果项目使用了多套日志框架,在代码层面要关心使用每一个日志框架的构建,如:log4j使用的是Logger.getLogger(LogTest.class);  而Common-logging  使用的是Log logger = LogFactory.getLog(LogTest.class)。这样子开发起来比较烦索。

2):项目期间更换日志框架的话,只要更新配置文件就可以。

3、我的配置:

1):引入jar包

db6d4d4d3e83?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

或者使用Maven的dependency

db6d4d4d3e83?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

2):在代码层使用import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

********

Logger logger = LoggerFactory.getLogger(MgisInitListener.class);

3):添加log4j.propertieslog4j.rootLogger=INFO,Console,File

log4j.logger.com.mgis.common=DEBUG

log4j.logger.org.springframework=WARN

log4j.appender.Console=org.apache.log4j.ConsoleAppender

log4j.appender.Console.Target=System.out

log4j.appender.Console.layout=org.apache.log4j.PatternLayout

log4j.appender.Console.layout.ConversionPattern=[%-5p] %d(%r) --> [%t] %l: %m %x %n

log4j.appender.File=org.apache.log4j.RollingFileAppender

************

详细的log4j配置可参考以下网址:

4):关于日志打印重复的问题修复。

第一种方式:添加log4j.additivity.com.****=false,这样子就不会重复了。

第二种方式:log4j.logger.com.****=,XXX    此时XXX不要使用与父类相同的appender即可。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

android log4j slf4j,浅谈log4j、slf4j日志框架集成应用 的相关文章

  • 如何在Android中为很长的列表视图上方设置浮动操作按钮的固定位置?

    我正在开发一个 Android 应用程序 主要用于listview 但我在使用时遇到问题Floating Action Button和 一起Long ListView 我的问题如下 当列表视图只有几个项目时 Floating item看得到
  • 如何从活动启动另一个应用程序(下载或预安装)?

    基本上 我想获取所有已安装应用程序的列表 并选择一个从活动中运行 我尝试过使用 Intents 进行 ACTION PICK 但这似乎遗漏了已下载的应用程序 并且其中有一堆垃圾 Thanks to get the list of apps
  • 是否可以禁止 EditText 中的第一个数字为“0”

    您好 我只是想知道是否可以禁止用户输入的第一个数字为 0
  • Android 版 YouTube 频道订阅

    我在我的应用程序中使用 YouTube API 用户可以使用其 Google 帐户登录 我希望用户能够订阅某些 YouTube 频道 这里似乎有一些关于网络的东西 https developers google com youtube su
  • OpenCV warpPerspective 性能缓慢

    在我的应用程序中 我跟踪一个物体 到达它的地方corners都在这个框架中 我发现它之间的单应性corners从最后一帧开始和 当前帧 使用单应性来做perspectiveTransform on the corners在当前帧中找到 得到
  • 如何在不使用adb shell的情况下获取android应用程序的pid?

    如何在不使用 adb shell 的情况下获取 Android 应用程序 pid 有没有API可以获取pid 任何帮助将不胜感激 由于每个应用程序都有自己的进程ID 因此可以通过 int pid android os Process myP
  • Android-无法解析符号 BaseObservable

    我正在尝试在 android 中实现数据绑定示例并使用可绑定变量创建 POJO 但我收到此错误 请帮忙 我正在关注这个教程http www vogella com tutorials AndroidDatabinding article h
  • 如何使用baseadapter自定义listview

    我想创建一个定制的ListView像这样 我想我必须使用BaseAdapter但我对此一无所知 主要 xml
  • Android 设备上的 Facebook 分享问题

    我使用了来自的样本AndroidFacebook示例 https github com ddewaele AndroidFacebookSample它在模拟器上运行良好 但在设备上它被转移到内置的 Facebook 意图 设备上不会出现身份
  • 在发布我的应用程序之前在 play.google 上获取我的应用程序的链接

    我想使用 facebook api 分享我的应用程序的链接 play google 上的链接 但在将应用程序发布到市场之前我必须拥有它才能将其放入我的代码中 除了发布后立即更新我的应用程序之外 还有其他解决方案吗 用这个 https pla
  • ScrollView 中的 ViewPager 不会垂直滚动

    我有一个layout有一个ViewPager自定义内部ScrollView并且 ViewPager 不会垂直滚动 自定义 ScrollView 用于修复使用 ScrollView 进行可怕的选项卡滑动的问题 是的 有足够的内容可以滚动 我已
  • 索尼 SmartWatch 2 定制表盘自固件更新后损坏

    我知道这将是这个的重复 gt SW2 更新后如何修复 Sony SmartWatch 2 上的自定义表盘时间 https stackoverflow com questions 27536415 how to fix custom watc
  • 方向改变后的javascript最大视口高度Android和iOS

    目标 查找设备的最大视口高度 包括设备的空间address bar这样我们就可以动态调整 min body 的大小并将内容向上推 问题 移动浏览器处理方向状态的方式不同 方向变化时更新 DOM 属性的方式也不同 使用 JavaScript
  • RecyclerView 未按预期滚动

    我有一个项目 我使用水平回收器视图 并且我想将一个元素居中 我的实现有效 但并非在所有情况下都可以检查此 GIF 正如您可能注意到的 如果我从左边来 它会正确滚动 如果我从右边来 它会过度滚动很多 我不知道如何停止也不知道如何解决这个问题
  • 用dagger 2查看依赖注入

    我有一个自定义视图扩展TextView 我应该在哪里调用我的组件来注入视图 component inject customTextView 因此 我发现我需要在自定义视图的构造函数中添加注入 在所有视图中 或者使一个调用另一个 Exampl
  • 横向模式下视频视图不是全屏

    我正在使用用 xml 设计的视频视图 该视频在纵向模式下为全屏 但当切换到横向模式时 它会左对齐 并且宽度和高度都会换行 而不是全屏 我参考了这些 但仍然没有解决这个问题 全屏视频视图未居中 https stackoverflow com
  • 旋转 LayerDrawable 中的单个 RotateDrawable

    我正在构建一个带有某种指南针的应用程序 并且我想使用 LayerDrawable 来绘制指南针并为其设置动画 LayerDrawable 由用于指南针背景的静态背景图像和用于旋转部分的 RotateDrawable 组成 这是我的可绘制资源
  • 如何在Android中将字体粗细设置为细、常规

    我有 3 个文本视图 我需要将它们的粗细设置为 轻 常规 和 压缩 有人可以帮助我如何在 Android 中实现这一目标吗 Use android textStyle on a TextView设置文本样式 例如bold italic或正常
  • 使用 Android 2.x 进行实时音频流传输

    我需要在 2 x 及更高版本的设备上播放直播 This http developer android com guide appendix media formats html声明不可能在 Android 2 x 的设备上播放直播 我在这里
  • 以编程方式暂时禁用自动更新

    我有一个自行车计算机应用程序 可以在用户骑行时记录数据 我有一位用户报告了一个我没有考虑到的问题 他出去进行了一次长途骑行 100 多英里 但在外出记录数据时 该应用程序通过 Google Play 自动更新进行了更新 不幸的是 这导致应用

随机推荐