Newsletter |
What Are The Main Components Of Log4J
We have mainly 3 components to work with Log4j …
- Logger
- Appender
- Layout
Logger
- Logger is a class, in org.apache.log4j.*
- We need to create Logger object one per java class
- This component enables Log4j in our java class
- Logger methods are used to generate log statements in a java class instead of sopls
- So in order to get an object of Logger class, we need to call a static factory method [ factory method will gives an object as return type ]
- We must create Logger object right after our class name, i will show you
Getting Logger Object
static Logger log = Logger.getLogger(YourClassName.class.getName())
Note:Β while creating a Logger object we need to pass either fully qualified class name or class object as a parameter, class means current class for which we are going to use Log4j.
Example
public class Client { static Logger l = Logger.getLogger(Client.class.getName()); public static void main(String[] args) { // Our logic will goes here } }
Logger object has some methods, actually we used to print the status of our application by using these methods only
We have totally 5 methods in Logger class
- debug()
- info()
- warn()
- error()
- fatal()
As a programmer its our responsibility to know where we need to use what method, did you observe there ? method names are different right, but all are same π
Priority Order
debug < info < warn < error < fatal
I mean, fatal is the highest error like some database down/closed
Remember:Β Friends don’t confuse by seeing all these 5 methods all are same, for example if our application is about 100 lines and we have JDBC related code in some 45th line or some where there we used to write fatal() method.Β All it could be is just for human identification purpose names are different, else these 5 methods will print one text message only π
You will get more clarity once you saw the first program on log4j.
Appender
Appender job is to write the messages into the external file or database or smtp
- Logger classes generates some statements under different levels right, this Appender takes these log statements and stores in some files or database
- Appender is an interface
In log4j we have different AppenderΒ implementation classes
- FileAppender [ writing into a file ]
- ConsoleAppender [ Writing into console ]
- JDBCAppender [ For Databases ]
- SMTPAppender [ Mails ]
- SocketAppender [ For remote storage ]
- SocketHubAppender
- SyslogAppendersends
- TelnetAppender
Again in FileAppender we have 2 more
- RollingFileAppender
- DailyRollingFileAppender
For now just remember, i will explain while executing the program
Layout
This component specifies the format in which the log statements are written into the destination repository by the appender
We have different type of layout classes in log4j
- SimpleLayout
- PatternLayout
- HTMLLayout
- XMLLayout
So will see one simple example on Log4j… [ In The Next Session ]
You Might Also Like
::. About the Author .:: | ||
it is very useful for me good analyzing about the topic
than q
Good work ! Good Explanation and clear gun shot points….
Hi Java4s,
subject: Minor correction.
Details
In the list of methods for Logger class you guys mentioned "fetal" instead of "fatal".In normal people can understand the things but at the first glance they might get little bit confused.Ofcourse later the naming convention was good.Please update the literal.
*Note:Consider this as intimation.
I have gone through some the tutorial like servlets, this log4j and spring.The explanation regarding to the topics were clear and easy to understand the things.Good work buddy.Keep goging π
Thanks
Bhadram Komali
It’s really simple and good Explanation,I easily understood all the concepts,Thank you very much……..
It’s really simple and i always found useful information, please provide SOAP WEBSERVICE and Junit tutorial asap.
Hai sir this is easily understand pls thanku so much…..
Easy to understand and very clear cut information.
Thankyou:)
Very Impressive tutorials.