Log4g

C语言日志工具包
授权协议 LGPL
开发语言 C/C++
所属分类 程序开发、 日志工具(Logging)
软件类型 开源软件
地区 不详
投 递 者 邹锦
操作系统 Linux
开源组织
适用人群 未知
 软件概览

Log4g是一个基于GObject 的日志工具。Log4g 的设计基于对流行的Log4j 1.2 日志包的移植。Log4j已经被移植到了很多编程语言中,包括(不限于)C++、Perl和Python。Log4g将这个功能带到C/GLib/GObject编程栈中。

Log4g 的核心组件是记录器(loggers)、附加器(appenders)和布局(layouts)。

Log4g元素(也就是附加器、布局和过滤器)是通过GObject属性来配置的。要想知道每个元素可用的属性的清单,那就去看API 文档。

记录器

记录器是Log4g 包中的中心对象

记录器是以一种命名层次来组织的。Log4g 使用的命名习惯是,将记录器“类”用一个点(.)隔开。例如,名为“org.gnome”的记录器是名为“org.gnome.foo”的记录器的一个祖宗。记录器可以继承它们的祖宗的附加器。这意味着记录到名为“org.gnome.foo”的记录器里去的事件也会被记录到“org.gnome”的附加器里去。这个属性被称为记录器的叠加性。默认情况下所有的记录器都具有叠加性。这个属性可以通过一个配置文件(记录器的additivity 属性)或者使用log4g_logger_set_additivity()来禁用。

附加器

附加器决定了事件是如何记录的

Log4g提供以下附加器

  • 异步附加器

     

  • 终端附加器

     

  • 文件附加器

     

  • 滚动文件附加器

     

  • Syslog附加器

     

布局

布局在一个事件被附加器记录之前决定它的格式。

Log4g提供以下布局

  • HTML布局
  • 模式布局
  • 简单布局
  • TTCC布局
  • XML布局

过滤器

Log4g有内置的过滤规则,然而还可以通过使用过滤器来进行自定义的过滤

Log4g提供以下过滤器

  • 全部否认过滤器
  • 匹配级别的过滤器
  • 匹配级别范围的过滤器
  • 字符串匹配过滤器

配置

Log4g 的一个强大特性就是在不用重新编译你的程序的情况下轻易使用不同方式(通过配置器)来配置这个包的能力。

Log4g提供以下配置器

  • 基本配置器
  • DOM配置器
  • 一、log4g简单配置控制台配置 以下是对log4j.properties文件配置==== #ConsoleAppender log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appen

  • Log4g有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局)。这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出。综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置。 Loggers组件在此系统中被分为五个级别:DEBUG、INFO、WARN、ERROR和FATAL。 这五个级别是有顺序的,DEBUG

  • 1、日志的级别: 我们现在要调用logger的方法,不过在这个Logger对象中,有很多方法,所以要先了解log4j的日志级别,log4j规定了默认的几个级别:trace<debug<info<warn<error<fatal等。这里要说明一下: 1)级别之间是包含的关系,意思是如果你设置日志级别是trace,则大于等于这个级别的日志都会输出。 2)基本上默认的级别没多大区别,就是一个默认的设定。

  • 日志记录 基础知识 作用: 记录项目产生的日志:调试日志/运行日志/异常日志 实现方式: JDK的logger log4j和log4j2 日志级别 日志 级别 作用 fatal 1(最高) 致命 error 2 warn 3 info 4 debug 5 调试 trace 6 堆栈 log4g 1 1. 基础配置 1. 添加依赖 pom.xml <dependency> <groupId>

  • log4j是Apache的一个开源项目,log4j2和log4j是一个作者,只不过log4j2是重新架构的一款日志组件,他抛弃了之前log4j的不足,以及吸取了优秀的logback的设计重新推出的一款新组件。log4j2的社区活跃很频繁而且更新的也很快。 1、配置文件类型 log4j是通过一个.properties的文件作为主配置文件的,而现在的log4j 2则已经弃用了这种方式,采用的是.xml

  • Spring boot配置log4g2 首先log4j不在更新 官网: End of Life On August 5, 2015 the Logging Services Project Management Committee announced that Log4j 1.x had reached end of life. For complete text of the announc

  • log4j.rootLogger=INFO, stdout, R  --指定输出哪些 log4j.appender.stdout=org.apache.log4j.ConsoleAppender  --输出位置 log4j.appender.stdout.layout=org.apache.log4j.PatternLayout --输出模式 # Pattern to output the cal

  • Log4J 由 apache 推出的开源免费日志处理的类库. 为什么需要日志? 在项目中编写 System.out.println();输出到控制台,当项目发布 到 tomcat 后,没有控制台(在命令行界面能看见.),不容易观察一些 输出结果. log4j 作用,不仅能把内容输出到控制台,还能把内容输出到文件中。便于观察结果. 使用步骤: 1. 引入依赖 <!-- log4j 日志 --> <d

  • 更多精彩博文,欢迎访问我的个人博客 前言 本人Java程序员一枚,眼看着这几年Go的势头不错,本着技多不压身的原则,也随大流慢慢学习。不得不说Go其实跟Java差别还是挺大的,毕竟习惯了面向对象的思想,一时间也有点接受不过来。俗话说实践才能出真知,本想着拿刚学的点皮毛练练手,结果就遇到了一个问题:日志。 Go语言不像Java中有诸如Log4j的大哥存在,其自带的log库其实功能有限。虽然催生出了诸

  • 1.]配置根Logger,其语法为: #log4j.rootLogger = [ level ] , appenderName, appenderName, log4j.rootLogger=INFO, A1 ,R 这一句设置以为着所有的log都输出 如果为log4j.rootLogger=WARN, 则意味着只有WARN,ERROR,FATAL #被输出,DEBUG,INFO将被屏蔽掉. PS:

  • <?xml version="1.0" encoding="UTF-8" ?>    <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">    <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">            <!-- ===================

  • Spring 6已经内置log4g2,如何启用log4g2日志,需要引入依赖 1.引入依赖 <!--log4j2--> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <v

 相关资料
  • 日志是非常重要的系统文件,管理员每天的重要工作就是分析和查看服务器的日志,判断服务器的健康状态。但是日志管理又是一项非常枯燥的工作,如果需要管理员手工查看服务器上所有的日志,那实在是一项非常痛苦的工作。有些管理员就会偷懒,省略日志的检测工作,但是这样做非常容易导致服务器出现问题。 那么我们有取代的方案吗?有,那就是日志分析工具。这些日志分析工具会详细地查看日志,同时分析这些日志,并且把分析的结果通

  • 1. 介绍 本篇会介绍三个关于分析nginx日志信息的工具。 2. nginx_log_analysis 这个工具是由一位叫LEO的网友提供的,它的博客是http://linux5588.blog.51cto.com/,它是用python语言写的,只是用来分析nginx日志,它的输出比较简单,以IP为主,可以查看每个IP的访问的流量,次数,占比等信息。 先获取这个python文件。 # 下载 $

  • IIS 6.0 日志导入工具是一个服务器日志分析工具,因为我们对文本内容分析起来非常吃力, 通常第一步是先导入数据库,而手工导入到数据库又是一个费时费力的事情, IIS 6.0 日志导入工具专门针对导入这一步而开发; 其特点如下: 1.针对访问日志量大,单个文件几百MB,或几个GB的日志导入; 2.导入速度非常快,采用OLEDB ODBC底层驱动; 3.采用SQL Server 批量导入接口,快速

  • LiteIDE LiteIDE是一款开源、跨平台的轻量级Go语言集成开发环境(IDE)。 支持的操作系统 Windows x86 (32-bit or 64-bit) Linux x86 (32-bit or 64-bit) 下载地址 :http://sourceforge.net/projects/liteide/files/ 源码地址 :https://github.com/visualfc/

  • 3.2. 安装C语言工具 Go的工具链采用C语言编写,构建需要安装以下开发工具: GCC, C语言标准库, Bison, make, awk, 和 ed (编辑器). 对于 OS X 系统,以上工具是Xcode的一部分。 对于 Ubuntu/Debian 系统,运行安装命令: sudo apt-get install bison ed gawk gcc libc6-dev make

  • 记事本,开发效率极低 Vim,初学者入门门槛高 VSCode,不喜欢 Sublime Test,不喜欢 GoLand,喜欢,当收费 LiteIDE(开源免费, 跨平台运行,轻量级) 生男生女都一样, 最关键是你中意哪个就用哪个 Goland 安装 下载安装包:点我下载 Goland,提取码:lm7v 运行安装文件 疯狂下一步 激活程序:自行淘宝 JetBrains 激活,仅供学生党参考, 在职人员

  • 本文向大家介绍C# 开发日志本地化工具,包括了C# 开发日志本地化工具的使用技巧和注意事项,需要的朋友参考一下     程序员讨厌写文档, 讨厌写注释, 而我还讨厌写日志, 输出一个  "Id=5, 姓名=王大锤, 性别=男, 生日=2020年1月1日"  总归会用到字符串的填充     Json序列化工具多好啊, 可是输出的是     业务部门的人就是看不懂, 毕竟不是人人都有良好的英语基础,

  • 本文向大家介绍易语言做语音朗读工具方法,包括了易语言做语音朗读工具方法的使用技巧和注意事项,需要的朋友参考一下 怎么自己动手做一个语音朗读的小工具呢 1、打开易语言,新建一个易语言窗口程序 2、在右边添加一个媒体播放组件和一个编辑框组件,一个按钮组件。 3、在左边模块菜单添加精易模块 4、在左边属性改下如下属性内容 5、双击启动窗口,写入如下代码 6、双击按钮组件,写入如下代码 7、点击运行,并静