উদাহরণ সহ SLF4J এবং Log4j/Logback Integration

SLF4J এর জন্য Logging Implementations - এসএলএফ৪জে (SLF4J) - Java Technologies

256

SLF4J (Simple Logging Facade for Java) বিভিন্ন ব্যাকএন্ড লগিং ফ্রেমওয়ার্ক যেমন Log4j বা Logback-এর সঙ্গে ইন্টিগ্রেশনের সুবিধা প্রদান করে। এটি একক API-র মাধ্যমে লগিং কার্যক্রম পরিচালনা করে, যা অ্যাপ্লিকেশন ডেভেলপমেন্ট এবং পরিচালনা সহজ করে।


SLF4J এবং Logback Integration

Logback হলো SLF4J-এর জন্য ডিফল্ট এবং সুপারিশকৃত ব্যাকএন্ড লগিং ফ্রেমওয়ার্ক। এটি দ্রুত, কার্যকর এবং সহজে কনফিগারযোগ্য।

Maven ডিপেনডেন্সি

Logback এবং SLF4J ব্যবহার করতে প্রয়োজনীয় ডিপেনডেন্সি যুক্ত করুন।

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>2.0.7</version>
</dependency>
<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>1.4.7</version>
</dependency>

Logback কনফিগারেশন

logback.xml ফাইল তৈরি করে লগিং কনফিগার করুন। এটি src/main/resources ফোল্ডারে রাখতে হবে।

logback.xml:

<configuration>
    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>

    <root level="info">
        <appender-ref ref="CONSOLE" />
    </root>
</configuration>

SLF4J এবং Logback এর ব্যবহার

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class LogbackExample {
    private static final Logger logger = LoggerFactory.getLogger(LogbackExample.class);

    public static void main(String[] args) {
        logger.info("Application started");
        logger.debug("Debugging log message");
        logger.warn("Warning message");
        logger.error("Error message");

        String user = "John";
        logger.info("User {} logged in successfully", user);
    }
}

আউটপুট (Console):

2024-12-21 10:00:00 [main] INFO  LogbackExample - Application started
2024-12-21 10:00:00 [main] WARN  LogbackExample - Warning message
2024-12-21 10:00:00 [main] ERROR LogbackExample - Error message
2024-12-21 10:00:00 [main] INFO  LogbackExample - User John logged in successfully

SLF4J এবং Log4j Integration

Log4j হলো আরেকটি জনপ্রিয় ব্যাকএন্ড লগিং ফ্রেমওয়ার্ক, যা SLF4J-এর মাধ্যমে ইন্টিগ্রেট করা যায়।

Maven ডিপেনডেন্সি

Log4j এবং SLF4J-এর জন্য নিচের ডিপেনডেন্সি যুক্ত করুন।

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>2.0.7</version>
</dependency>
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-slf4j-impl</artifactId>
    <version>2.20.0</version>
</dependency>
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>
    <version>2.20.0</version>
</dependency>

Log4j কনফিগারেশন

log4j2.xml ফাইল তৈরি করে লগিং কনফিগার করুন। এটি src/main/resources ফোল্ডারে রাখতে হবে।

log4j2.xml:

<Configuration status="WARN">
    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} [%t] %-5level %logger{36} - %msg%n" />
        </Console>
    </Appenders>

    <Loggers>
        <Root level="info">
            <AppenderRef ref="Console" />
        </Root>
    </Loggers>
</Configuration>

SLF4J এবং Log4j এর ব্যবহার

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class Log4jExample {
    private static final Logger logger = LoggerFactory.getLogger(Log4jExample.class);

    public static void main(String[] args) {
        logger.info("Log4j Integration started");
        logger.debug("Debugging log message");
        logger.warn("Warning message");
        logger.error("Error message");

        String action = "saved";
        logger.info("User data has been {}", action);
    }
}

আউটপুট (Console):

2024-12-21 10:00:00 [main] INFO  Log4jExample - Log4j Integration started
2024-12-21 10:00:00 [main] WARN  Log4jExample - Warning message
2024-12-21 10:00:00 [main] ERROR Log4jExample - Error message
2024-12-21 10:00:00 [main] INFO  Log4jExample - User data has been saved

SLF4J এবং Logback/Log4j এর মধ্যে পার্থক্য

বৈশিষ্ট্যLogbackLog4j
পারফরম্যান্সদ্রুত এবং কার্যকরতুলনামূলক ধীর
কনফিগারেশনসহজ, XML এবং Groovy সমর্থনXML, JSON এবং YAML সমর্থন
ডিফল্ট সাপোর্টSLF4J-এর জন্য ডিফল্ট ব্যাকএন্ডSLF4J-এর জন্য ব্যাকএন্ড হিসাবে ব্যবহৃত

SLF4J এবং Logback/Log4j Integration ব্যবহার করে লগিং কার্যক্রম সহজে পরিচালনা করা যায়। এটি অ্যাপ্লিকেশনের কার্যক্ষমতা উন্নত করার পাশাপাশি ডায়াগনস্টিক ও ডিবাগিং কার্যক্রমকে আরও কার্যকর করে তোলে।

Content added By
Promotion

Are you sure to start over?

Loading...