JavaRush /Java блогу /Random-KY /Биз журналды JavaRush долбоорубузга туташтырабыз (slf4f ж...
Дмитрий Яковенко
Деңгээл
Москва

Биз журналды JavaRush долбоорубузга туташтырабыз (slf4f жана log4j)

Группада жарыяланган
Мавенди JavaRush долбооруңузга кантип туташтыруу керектигин менин бул макаламдан окуй аласыз . Төмөнкүлөр сиз муну кантип жасоону билесиз деп болжолдойт. Эгерде биз slf4j колдонгубуз келсе, анда бизге көз карандылык керек:
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.30</version>
</dependency>
Андан кийин биз жасайбыз:
public static void main(String[] args) throws IOException {
    Logger logger = LoggerFactory.getLogger(Solution.class);
    logger.info("hello world!");
}
Жана биз ката алабыз:
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Кайсы жалпысынан логикалык. slf4j - бул орогуч, бирок биз аны эмне менен ороп койдук? Эч нерсеби? Ооба, биз ката кетти. Сиз аны төмөнкүлөрдүн бирине ороп алсаңыз болот: log4j, util.logging, NOP, System.err, JCL, logback. Көбүрөөк маалымат баштапкы нускамада . Log4j жана System.err мисалдарын карап көрөлү: 1) Келгиле, жөнөкөй нерседен баштайлы, System.err . Бул үчүн, муну (slf4j-жөнөкөй) мурунку көз карандылыкка (slf4j-api) кошуңуз.
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-simple</artifactId>
    <version>1.7.30</version>
</dependency>
Биз ошол эле versionларды алабыз, 2021-жылдын 10-майына карата ал 1.7.30. Эгерде сиз https://mvnrepository.com/ сайтынан көз карандылыкты алсаңыз , алып салууну унутпаңыз
<scope>test</scope>
Болбосо, журналдарыңыз сыноолордо гана иштейт. 2) Эми log4j конфигурациялаганга аракет кылалы , ал үчүн биз 2 көз карандылыкты кошуубуз керек: log4jдин өзү жана slf4j менен log4j (slf4j-log4j12) ортосундагы катмар. Бул төмөнкүдөй көрүнөт:
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-log4j12</artifactId>
    <version>1.7.30</version>
</dependency>
<dependency>
    <groupId>log4j</groupId>
    <artifactId>log4j</artifactId>
    <version>1.2.17</version>
</dependency>
slf4j кайсы логгер менен иштеши керек экенин түшүнбөшү үчүн (slf4j-жөнөкөй) алып салышыбыз керек экени түшүнүктүү. Жана кет (slf4j-api), анткени бул slf4j. 2 кошумча көз карандылык жөнүндө. log4j биз эскисин кошуп жатабыз (2012-жылдын май айынан баштап, эмне үчүн экенин билбейм, башкалар менен эксперимент кылсаңыз болот). Анын versionсы 1.2.17. slf4j аны менен иштеши үчүн сизге ылайыктуу катмар керек - slf4j-log4j12, мында акыркы символдор (12) log4j versionсын билдирет. Бул учурда, slf4j-api жана slf4j-log4j12 versionсы 1.7.30 болушу керек - учурда эң акыркы туруктуу. Көз карандылыктарды туташтыргандан жана Maven долбоорун жаңырткандан кийин. log4j иштеши үчүн сизге дагы 2 нерсе керек: 1) Конфигурация файлын орнотуңуз. Окуйбуз, тандайбыз, көчүрөбүз. 2) Жумуштун алдында log4j конфигурациясын окуңуз:
PropertyConfigurator.configure("d:\\Java\\JavaRushTasks\\4.JavaCollections\\log4j.properties");
Мейли, же файл кайда. Эгерде сиз бардык журналдарды көргүңүз келсе, каттоо деңгээлин БААРЫ деп коюуну унутпаңыз. Биз резюмеге кошобуз - log4j & slf4j. Сен сулуусуң! Эгер ал жардам берсе - лайк, жазылуу, коңгуроо!)))
Комментарийлер
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION