Uploaded image for project: 'controller'
  1. controller
  2. CONTROLLER-1134

Clustering: Use slf4j Logger instead of akka LoggingAdapter

    XMLWordPrintable

Details

    • Bug
    • Status: Resolved
    • Resolution: Done
    • Post-Helium
    • None
    • mdsal
    • None
    • Operating System: All
      Platform: All

    • 2669
    • Normal

    Description

      The Shard and raft code uses akka's LoggingAdapter. There's a couple downsides to this:

      • Enabling debug for the Shard class in the pax logging cfg file (log4j.logger...=DEBUG) does not work. I also tried setting logging-filter = "akka.event.slf4j.Slf4jLoggingFilter" in the akka.conf. It appears that akka logging does not support enabling debug per class/package. You can only enable debug globally in the akka.conf which produces a lot of output.
      • It's not desirable for usability to have multiple mechanisms to enable debug. In addition, modifying logging options in the akka.conf would require a controller restart whereas changes to the pax logging cfg file are dynamic.
      • In the pax logging cfg file, if you configure the ConversionPattern to include line numbers (%L), since akka uses a separate logging actor, that actor's line # is logged which isn;t useful.

      The reason for initially using akka's logging was because it's asynchronous (logging is done by a separate actor). However logging in karaf is done asynchronously via an OSGi service.

      Therefore the usage of akka's LoggingAdapter will be changed to the standard slf4j Logger.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            tpantelis Tom Pantelis
            tpantelis Tom Pantelis
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: