Uploaded image for project: 'Logging analytics'
  1. Logging analytics
  2. LOG-95

Add AOP logging annotation support



    • Epic Name:
      Add AOP logging annotation support


      Investigate Spring or AsjectJ oriented annotation of the code - an AOP design pattern

       Problem description + sizing

      • There is a perception (probably accurate) that there is a lot of code that was written within each component on top of EELF that could be factored out and turned into a common wrapper on top of EELF (or perhaps something added to EELF) and thus reduce the code base
      • We want to be able to add functionality to logging without modifying each component, such as the ability to send certain messages over a more near-realtime mechanism such as a message bus; this could be done in a wrapper or in an additional appender
      • We want to be able to easily support future changes such as new log message formats without changing all of the components; to at least some extent we already have this in slf4j/log4j/logback
      • To the extent possible, adding logging to infrastructure would eliminate the need to have every developer concerned with correct logging; this could help especially in the area of inbound API calls (Jetty is used in all of the components except MSO which uses JBoss)
      • Some desire to have format validation performed at runtime, flagging an error if the format of a particular MDC did not meet the specification
      • It would be nice to verify that X-ONAP-Request-ID is being passed in and picked up where required; building this as an annotation would allow developers to put an annotation on a method that enforces that X-ONAP-Request-ID came in
      • Need a migration strategy
      • Story for spring wrapper or plain wrapper



      • Audit of the code (start with AAI abstract logger) - Logger references in babel, data-router, gizmo, model-loader, rest-client, router-core, search-data-service, sparky-be  (not resources, traversal)
      • Prototype changes in the aspect formula to change logging injection
      • Transition plan for moving all or part of the code to the new format
      • Audit of spring use in each project

       Out of scope

      DCAE is currently being migrated into OOM - we can push this work until later in R2






      • AOP annotation support for Logging - check for existing code and raise (custom EELF annotations on top of Spring ?)


          Issue Links

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



              pau2882 Prudence Au
              michaelobrien Michael O'Brien
              0 Vote for this issue
              3 Start watching this issue