الخلفية: نظرًا لأن الإصدار الذي يبدأ من Spring Boot 1.4 يجب أن يستخدم Log4J2 ، فإن التنسيقات المدعومة هي JSON و XML. تستخدم هذه الممارسة بشكل رئيسي وصف سجل تعريف التنسيق لـ XML.
SPRING BOOT 1.5.8.
1. أولاً ، استبعاد الربيع النجمة أسفل الحزم النجمة النجمية والبوت الربيعة ، ثم تقديم حزمة SPRING-BOOT-Starter-Log4J2.
<Rependency> <roupeD> org.springframework.boot </rougiD> <intifactid> Spring-Boot-Starter-Web </stifactid> <visplusions> <Sective> <roupiD> org.springframework.boot </suntifactid> </sivesions> </sependency> <!--https: //mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-log4j2--> <sperence> <roupeid> org.springframework.boot </groupid> <splection> 1.5.8.release </version> </sependency>
2. اضبط موقع مورد الملف في POM بحيث يمكن تعديل المتغيرات في الملف من خلال الخصائص في POM.
<NinalName> $ {project.name} </finalName> <ustredirectory> src/main/java </ourcedirectory> <testSourcedirectory> src/test/java </testsourcedirectory> <swern> **/*</include> </sult> </resource> </specials> تعيين سمات استبدال المتغير
<Properties> <project.build.sourceencoding> utf-8 </project.build.sourceencoding> <project.reporting.outputencoding> utf-8 </project.reporting <log4j2.root.path>/opt/appstack/apache-tomcat/logs/$ {project.name} </log4j2.root.path> <trog4j2.error <log4j2.package.path>/opt/appstack/apache-tomcat/logs/$ {project.name} -kk </log4j2.package.path> </sfressions> 3. نظرًا لأن Boot Spring له تأثير وقائي على ملفات التكوين YML أو الخصائص ، يلزم الإضافات لاستبدال المتغيرات في ملف التكوين.
<UnctionManagement> <ucplitins> <clupin> <roupiD> org.springframework.boot </rougeid> <unsifactid> spring-boot-maven-plugin </stifactid> </plugin> <!-Spring-boot من أجل حماية Application.yml و Application. application.yml and application.properties ، يتم تعديل العنصر الافتراضي $ {...} إلى @... @-> <!-من أجل استخدام متغير maven للملفات yml وخصائص من التمهيد الربيع لاستبداله ، حامل $ {}-> <plugin> <ceroding> utf-8 </ishoding> <ederefaultDelimiters> true </uledefaultDelimiters> </isplipuration> </spliexin> </sugionins> </pluginmanagement>4. يستخدم هذا المثال تكوين YML لأحذية الربيع ، وتكوين ملف تكوين log4j2 في Application.yml
قطع الأشجار:
التكوين: classpath: log4j2.xml
إذا كنت ترغب في تكوين ملفات تكوين log4j2 مختلفة لبيئات مختلفة ، يمكنك تعيين قيمة التكوين في التطبيق المقابل.
5. تكوين ملف التكوين من log4j2.xml
<؟ Level = "debug"> <appenderRef Ref = "Console"> </appenderRef> <appenderRef Ref = "Rolling_file"> </appenderRef> </round> <!-اكتب com.kk.springboot.demo to file-> <logger name = "com.kk.springboot.demo" ref = "file"> </espenderref> </logger> </logger> <appenders> <console name = "console" target = "system_out" follow = "true"> <!-console فقط يخرج المعلومات عند المستوى و> stylede> <datple> <tordy> <turderfilter = "info" </patternlayout> </sonsole> <!-يمكن لملاحقات من نفس المصدر تحديد العديد من Rollingfiles ، وتحديد السجلات المخزنة حسب اليوم-> <rollingfile name = "rolling_file" fileName = "$ {log4j2.root.path <ThresholdFilter Level = "Info" onMatch = "Accept" onMismatch = "deny"/> <datplelayout> <datple> $ {pattern} </pattern> </patternlayout> <sivaliCies> <StimBasedTriggeringPolicy interval = "1"/> <! name = "file" fileName = "$ {log4j2.package.path} .log"> <!-<!-<!-<!-وحدة التحكم فقط تخرج المعلومات عند المستوى وما فوق (onMatch) ، وغيرها من الرفض المباشر (onMismatch)->-> <thersholdfilter <turday> $ {pattern} </tation> </tatherlayout> </iple> </espenders> </iscification>6. يتم استخدام سجلات log4j2 في رمز برنامج Java.
logger static static log = loggerfactory.getLogger (UserController.class) ؛ log.info ("Enter in entityparam") ؛ ......7. عن طريق تغيير وقت النظام ، يتم تخزين سجلات الاختبار وتكوينها على أساس يومي.
المثال أعلاه لملف سجل Boot Custom Log4j2 هو كل المحتوى الذي أشاركه معك. آمل أن تتمكن من إعطائك مرجعًا وآمل أن تتمكن من دعم wulin.com أكثر.