個人的に学習ビデオを組み合わせて簡単に理解して記録します
ログ レベルの説明: Log4j は、すべての 8 レベルのログ出力を提供します。 最も低いレベルは、すべてのレベルのログを開くために使用されます。TRACE プログラムに基づく追跡情報は昇格されます。この追跡情報のログ レベルは非常に低く、使用される DEBUG は、主に開発と協力し、開発プロセス中に重要な実行情報を出力するために、きめの細かい情報イベントがアプリケーションのデバッグに非常に役立つことを示しています。INFO メッセージの 粗いレベルの実行情報 WARNは警告を意味し、プログラムは実行中です 発生する可能性のある隠れたエラーが発生します 。一部の情報はエラーではありませんが、このレベルの出力の目的は、プログラマに エラー システムのエラー メッセージを表示することであることに注意してください。発生してもシステムの動作には影響しません 。一般に、あまり多くのログを出力したくない場合は、このレベルを使用できます。FATAL は、 システムが続行できない重大なエラーを意味します。このレベルのエラーが発生した 場合、プログラムは実行を停止できることを意味します。OFF が最高のレベルです。ユーザーはすべてのログ レコードを閉じます。 デバッグがデフォルトのログ出力レベルです。設定しないでください
以前 -- これはデフォルトの初期化構成であり、使用しない場合は追加する必要はありません。
//加载初始化配置 BasicConfigurator.configure(); Logger logger = Logger.getLogger(Log4jTest01.class); logger.fatal("fatal信息"); logger.error("error信息"); logger.warn("warn信息"); logger.info("info信息"); logger.debug("debug信息"); logger.trace("trace信息");
始める
1.log4j.properties設定ファイル
#配置根节点logger log4j.rootLogger=trace,console #配置自定义logger,log4j.logger.这后面开始就是项目的路径,会继承根logger log4j.logger.com.bjpowernode.log4j.test=info,file #配置apache的logger log4j.logger.org.apache=error #日志输出方式--控制台 log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.layout=org.apache.log4j.PatternLayout log4j.appender.console.layout.conversionPattern=%r [%-10p] %t %c %d{yyyy-MM-dd HH:mm:ss:SSS} [%m] %n #日志输出方式--文件 log4j.appender.file=org.apache.log4j.FileAppender log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.conversionPattern=%r [%-10p] %t %c %d{yyyy-MM-dd HH:mm:ss:SSS} [%m] %n log4j.appender.file.file=E://test//log4j.log log4j.appender.file.encoding=UTF-8 #日志输出方式--根据文件大小 #RollingFileAppender log4j.appender.rollingFile=org.apache.log4j.RollingFileAppender log4j.appender.rollingFile.layout=org.apache.log4j.PatternLayout log4j.appender.rollingFile.layout.conversionPattern=%r [%-10p] %t %c %d{yyyy-MM-dd HH:mm:ss:SSS} [%m] %n log4j.appender.rollingFile.file=E://test//log4j.log log4j.appender.rollingFile.encoding=UTF-8 #拆分文件的大小 log4j.appender.rollingFile.maxFileSize=1MB #拆分文件的数量 log4j.appender.rollingFile.maxBackupIndex=5 #日志输出方式--根据时间 #DailyRollingFileAppender log4j.appender.dailyRollingFile=org.apache.log4j.DailyRollingFileAppender log4j.appender.dailyRollingFile.layout=org.apache.log4j.PatternLayout log4j.appender.dailyRollingFile.layout.conversionPattern=%r [%-10p] %t %c %d{yyyy-MM-dd HH:mm:ss:SSS} [%m] %n log4j.appender.dailyRollingFile.file=E://test//log4j.log log4j.appender.dailyRollingFile.encoding=UTF-8 ##文件拼接格式,不能使用'.'yyyy-MM-dd HH:mm:ss:SSS,这个格式,会报错 log4j.appender.dailyRollingFile.datePattern='.'yyyy-MM-dd HH-mm-ss #配置appender输出方式 输出到数据库表 log4j.appender.logDB=org.apache.log4j.jdbc.JDBCAppender log4j.appender.logDB.layout=org.apache.log4j.PatternLayout log4j.appender.logDB.Driver=com.mysql.jdbc.Driver log4j.appender.logDB.URL=jdbc:mysql://localhost:3306/test log4j.appender.logDB.User=root log4j.appender.logDB.Password=123456 log4j.appender.logDB.Sql=INSERT INTO tbl_log(name,createTime,level,category,fileName,message) values('project_log','%d{yyyy-MM-dd HH:mm:ss}','%p','%c','%F','%m')
2. Javaコード
public class Log4jTest02 { @Test public void test02(){ //启动默认的log4j.properties配置文件 //BasicConfigurator.configure(); //输出Logger的详细信息 //LogLog.setInternalDebugging(true); Logger logger = Logger.getLogger(Log4jTest02.class); logger.fatal("fatal"); logger.error("error"); logger.warn("warn"); logger.info("info"); logger.debug("debug"); logger.trace("trace"); Logger logger1 = Logger.getLogger(Logger.class); logger1.fatal("fatal"); logger1.error("error"); logger1.warn("warn"); logger1.info("info"); logger1.debug("debug"); logger1.trace("trace"); } }
3. 依存性
<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.21</version> </dependency>
4. まとめ
好奇心是动力!
最初のステップは、依存関係をインポートすることです。2 番目のステップは、ルート ロガーを構成することです。最初のパラメータはログ レベルで、2 番目のパラメータはログ出力方法です。複数のログ出力方法を「,」で区切って指定できます。 3 番目のステップは要約です。ログ出力方法は 5 つあり、1 つを使用することも、複数を組み合わせて使用することもできます。4 番目のステップはテストです。固定プレフィックス log4j.logger. を使用してカスタム ロガーを構成することもできます。後ろにドットがあり、サフィックスがプロジェクトのパッケージ パスであることに注意してください。
不備があればご指摘ください〜