Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-11284

Asynchronous logging with Log4j2

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Duplicate
    • None
    • None
    • None
    • None

    Description

      Log4j 2.0 is the successor project to Log4J 1.x and logback. From http://logging.apache.org/log4j/2.x/:

      Apache Log4j 2 is an upgrade to Log4j that provides significant improvements over its predecessor, Log4j 1.x, and provides many of the improvements available in Logback while fixing some inherent problems in Logback's architecture. [...] Log4j 2 contains next-generation Asynchronous Loggers based on the LMAX Disruptor library. In multi-threaded scenarios Asynchronous Loggers have 10 times higher throughput and orders of magnitude lower latency than Log4j 1.x and Logback.

      Use Log4j2's asynchronous logger for managing HBase log messages. We can't do anything about Hadoop or ZooKeeper or other components but the preponderance of logging done by HBase during operation comes from our own code.

      Log4j2 can remain hidden behind the commons-logging facade except where we might programmatically adjust configuration and add components (unit tests, log management utilities).

      Log4j2 can also automatically reload configuration upon modification, will be useful for operations.

      We have already brought the LMAX Disruptor in on trunk for the WAL.

      Attachments

        1. HBASE-11284.patch
          90 kB
          Andrew Kyle Purtell

        Activity

          People

            Unassigned Unassigned
            apurtell Andrew Kyle Purtell
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: