قم بتكوين Java Log4j2 في مشروعك

  1. تبعيات الربط Log4j2 وSLF4j
    لجعل Log4j2 يعمل مع SLF4J، نحتاج إلى تضمين التبعيات الثلاثة التالية.
    log4j-slf4j-impl.jar – ربط Log4j 2 SLF4J. يسمح للتطبيقات المشفرة بـ SLF4J API باستخدام Log4j2 كتطبيق.
    log4j-api.jar – يوفر مكونات المحول المطلوبة للمنفذين لإنشاء تطبيق التسجيل.
    log4j-core.jar – فئات تنفيذ Log4j الأساسية.
    يمكن نسخ تبعيات Maven وGradle على النحو التالي.
    pom.xml

<التبعية>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.15.0</version> </dependency>
<التبعية>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.15.0</version>
</التبعية> <التبعية>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<version>2.15.0</version>
</التبعية>

  1. قم بإنشاء ملف log4j2.xml في مجلد موارد المشروع الخاص بك
    مثال على تدوير الملفات واستخدام متغيرات النظام ومصممة للاستخدام ضمن خادم Wildfly:

<?xml version=”1.0″ ترميز=”UTF-8″?>
<حالة التكوين = “${env:LOG_LEVEL}”>
<الملحقون>
<RollingFile name = “LogToFile” fileName = “${env:JBOSS_HOME}/standalone/log/xxx.log” filePattern = “${env:JBOSS_HOME}/standalone/log/xxx.log-%d{yyyy-MM-dd}”> <PatternLayout>
<pattern>[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} – %msg%n </pattern> </PatternLayout>
<السياسات>
<TimeBasedTriggeringPolicy الفاصل الزمني = “1” تعديل = “صحيح” />
<OnStartupTriggeringPolicy />
</Policies> <!– سيتم إنشاء 10 ملفات كحد أقصى يوميًا –>
<DefaultRolloverStrategy max = “20”>
<حذف basePath=”${env:JBOSS_HOME}/standalone/log/” maxDepth=”10″>
<!– حذف كافة الملفات الأقدم من 30 يومًا –>
<IfLastModified age = “30d” />
</حذف>
</DefaultRolloverStrategy>
</RollingFile>
</الملحقون>
<Loggers>
<!– تجنب السجلات المكررة مع الإضافة=خطأ –>
<Logger name = “xxx-be”level = “${env:LOG_LEVEL}” additivity = “false”> <AppenderRef ref = “LogToFile”/>
</المسجل>
<مستوى الجذر = “${env:LOG_LEVEL}”>
<AppenderRef ref = “LogToFile”/>
</جذر>
</لوجرز>
</التكوين>

  1. log4j2.xml
  2. استخدام المسجل في التعليمات البرمجية
    import org.apache.logging.log4j.Logger;
    المسجل logger = LogManager.getLogger(“xxx-be”);
    logger.info(“بدأت”);

كنت بحاجة إلى يوم كامل لإنجاحه وآمل أن يساعد هذا المطورين.

ترك الرد

اكتشف المزيد من مدونة فيليسلاف كراستيف

اشترك الآن لمواصلة القراءة والوصول إلى الأرشيف الكامل.

مواصلة القراءة