Practice Program on Heirarichal Logging

1. Create Parent and Child Loggers

This program demonstrates hierarchical logging by creating a parent logger and a child logger. The child logger inherits the logging behavior of the parent logger.

import java.util.logging.Logger;

public class ParentChildLoggerExample {

    public static void main(String[] args) {

        Logger parentLogger = Logger.getLogger("com.myapp");

        Logger childLogger = Logger.getLogger("com.myapp.module");

        parentLogger.info("Message from Parent Logger");

        childLogger.info("Message from Child Logger");
    }
}
Output:
Aug 07, 2026 11:13:40 AM ParentChildLoggerExample main
INFO: Message from Parent Logger
Aug 07, 2026 11:13:40 AM ParentChildLoggerExample main
INFO: Message from Child LoggerCode language: CSS (css)

2. Set Logging Level for Parent Logger

This program demonstrates that a child logger inherits the logging level of its parent logger. Only log messages that satisfy the parent’s logging level are displayed.

import java.util.logging.Level;
import java.util.logging.Logger;

public class ParentLoggerLevelExample {

    public static void main(String[] args) {

        Logger parentLogger = Logger.getLogger("com.company");

        Logger childLogger = Logger.getLogger("com.company.project");

        parentLogger.setLevel(Level.WARNING);

        childLogger.info("Information Message");

        childLogger.warning("Warning Message");

        childLogger.severe("Severe Error Message");
    }
}
Output:
Aug 07, 2026 11:15:54 AM ParentLoggerLevelExample main
WARNING: Warning Message
Aug 07, 2026 11:15:54 AM ParentLoggerLevelExample main
SEVERE: Severe Error MessageCode language: CSS (css)

3. Hierarchical Logging with Parent ConsoleHandler

This program demonstrates how a child logger inherits the handler attached to its parent logger. The parent logger uses a ConsoleHandler to display log messages generated by both loggers.

import java.util.logging.ConsoleHandler;
import java.util.logging.Level;
import java.util.logging.Logger;

public class HierarchicalHandlerExample {

    public static void main(String[] args) {

        Logger parentLogger = Logger.getLogger("com.college");

        ConsoleHandler handler = new ConsoleHandler();

        handler.setLevel(Level.ALL);

        parentLogger.addHandler(handler);

        parentLogger.setUseParentHandlers(false);

        parentLogger.setLevel(Level.ALL);

        Logger childLogger = Logger.getLogger("com.college.student");

        childLogger.info("Student Module Started");

        childLogger.warning("Attendance Below 75%");

        childLogger.severe("Student Record Not Found");
    }
}
Output:
Aug 07, 2026 11:17:43 AM HierarchicalHandlerExample main
INFO: Student Module Started
Aug 07, 2026 11:17:43 AM HierarchicalHandlerExample main
WARNING: Attendance Below 75%
Aug 07, 2026 11:17:43 AM HierarchicalHandlerExample main
SEVERE: Student Record Not FoundCode language: CSS (css)

References

CodeGPT-small-java
Codebert-base
CodeBERT
Scroll to Top