如何配置log4j2日志记录至数据库

如何配置log4j2日志记录至数据库,第1张

配置log4j2日志记录至数据

1、建立用于保存日志的数据库表:

CREATE TABLE `sys_log` (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `level` varchar(32) NOT NULL,

  `logger` varchar(100) NOT NULL,

  `message` varchar(1000) DEFAULT NULL,

  `exception` varchar(10000) DEFAULT NULL,

  `date_add` datetime NOT NULL,

  PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8mb4

2、配置 databaseAppender :

<JDBC name="databaseAppender" tableName="sys_log">

      <ConnectionFactory class="cc.s2m.web.s2mBlog.util.StaticProp" method="getDatabaseConnection" />

      <Column name="date_add" isEventTimestamp="true" />

      <Column name="level" pattern="%level" />

      <Column name="logger" pattern="%logger" />

      <Column name="message" pattern="%message" />

      <Column name="exception" pattern="%ex{full}" />

    </JDBC>

3、其中 cc.s2m.web.s2mBlog.util.StaticProp 类的getDatabaseConnection方法为获取可用的datasource:

DriverManagerDataSource ds = new DriverManagerDataSource()

ds.setDriverClassName("com.mysql.jdbc.Driver")

ds.setUrl("jdbc:mysql://127.0.0.1/s2mBlog?characterEncoding=utf8")

ds.setUsername("root")

ds.setPassword("123456")

return ds.getConnection()

4、指派需要记录的日志,使用 databaseAppender 即可:

<logger name="SYSLOG" level="INFO" additivity="false">

      <appender-ref ref="databaseAppender"/> 

</logger>

以日志文件为例,日志数据是日志型的数据类别,通常都是以*.log结尾。

日志文件是用于记录系统 *** 作事件的记录文件或文件集合, *** 作系统有 *** 作系统日志文件,数据库系统有数据库系统日志文件,等等。系统日志文件是包含关于系统消息的文件,包括内核、服务、在系统上运行的应用程序等。不同的日志文件记载不同的信息。例如,有的是默认的系统日志文件,有的记载特定任务。在数据库中用事务日志文件记录数据的修改 *** 作,其中的每条日志记录或者记录所执行的逻辑 *** 作,或者记录已修改数据的前像和后像。前像是 *** 作执行前的数据复本;后像是 *** 作执行后的数据复本。日志文件,可以处理历史数据,不会受防火墙阻隔,可以追踪带宽或下载完成,可以追踪搜索引擎蜘蛛,可以追踪移动用户。

1、首先确认你日志是否启用了mysql>show variables like 'log_bin'。

2、如果启用了,即ON,那日志文件就在mysql的安装目录的data目录下。

3、怎样知道当前的日志mysql>show master status。

4、看二进制日志文件用mysqlbinlog,shell>mysqlbinlog mail-bin.000001或者shell>mysqlbinlog mail-bin.000001 | tail,Windows 下用类似的。

MySQL的日志 *** 作:

1、首先,登陆mysql后,执行sql语句:show variables like 'log_bin'。

2、#错误日志log-errol开启方式:在my.ini的[mysqld]选项下:添加代码:log-error=E:\log-error.txt。

记录内容:主要是记录启动、运行或停止mysqld时出现的致命性问题,都是系统级的错误记录。

3、#查询日志:log,开启方式:在my.ini的[mysqld]选项下:添加代码:log=E:/mysql_log.txt。

4、#二进制日志:log-bin,开启方式:在my.ini的[mysqld]选项下:添加代码:log-bin=E:/mysql_log_bin,记录内容:主要是记录所有的更改数据的语句,可使用mysqlbinlog命令恢复数据。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9628305.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存