Log4j – Logging in Database

In this article, you will see how to write your logging information into a database.

First create a new Java Project and configure it as Maven Project. For Reference, Click Here

Add the following dependencies in pom.xml


1. Sql Script

Use the following Sql Script for creating table.

CREATE TABLE logging(loggingdate  DATE, logger VARCHAR(50), logginglevel  VARCHAR(10),
    message VARCHAR(100));

2. Properties file

The following configuration writes your log information in database


# Define the root logger with appender file
log4j.rootLogger = INFO, DB

# Define the DB appender

# Set JDBC Options

# Set the SQL statement to be executed.
log4j.appender.DB.sql=insert into logging values('%d{yyyy-MM-dd  HH:mm:ss.SSS}','%C','%p','%m')

# Define the layout for file appender

3. Log4j in Java Program

The following Java class is a very simple example that initializes, and then uses, the Log4J logging library for Java applications.

package com.kruders;

import org.apache.log4j.Logger;

public class HelloWorld {
	static final Logger logger = Logger.getLogger(HelloWorld.class);
	public static void main(String[] args) {
		logger.info("Hello World!!!");

When you run the above example, you will see the similar logs in database as shown in Figure 2.1

Figure 2.1 Figure 2.1

You can download the source code of this example here.


One Response to Log4j – Logging in Database

  1. ibrahim January 24, 2014 at 2:35 pm #

    i wanna save errors to db, but info, debug messages should be display in console how can i do this both ?

Leave a Reply