Based on analysis from bug 1577975, I believe that one of the ways with which we can reduce object allocation in OpenDaylight, thus causing less pressure on the Java Virtual Machine's Garbage Collector running ODL, with a simple logging configuration change. The full technical background is discussed upstream in https://jira.opendaylight.org/browse/ODLPARENT-176. The proposed change is https://git.opendaylight.org/gerrit/#/c/77790/2/karaf/opendaylight-karaf-resources/src/main/resources/etc/org.ops4j.pax.logging.cfg The impact of that is that the ODL karaf.log will not include the ID, name and version of the respective OSGi bundle which logs anymore. This is a very small price to pay (nobody will miss that IMHO) if there is even a slight chance that this simple change can help ODL's memory management. Let's discuss where this change can be made, I'm hoping that this is a 5' change in some ... template.. in .. Triple'O? Filing this for component puppet-opendaylight, plz change to opendaylight if needed.
Tim, would this be trivial for you (or for to ask Janki) to change?
Updated Summary due to new finding that this could also help with lock contention (ODLPARENT-176).
Yeah it is pretty easy to change. Are we able to always set the log4j2.pattern as "%d{ISO8601} | %-5p | %-16t | %-60c{6} | %m%n"? In other words, we don't expect that pattern to change over future releases right? Also, looks like the patch was abandoned to make this as a default change in ODL. Is it better to just change this as the default in ODL?
> Yeah it is pretty easy to change. Are we able to always set the > log4j2.pattern as "%d{ISO8601} | %-5p | %-16t | %-60c{6} | %m%n"? In other > words, we don't expect that pattern to change over future releases right? Correct, this pattern would be fairly fixed (unless we realized it wasn't "wide" enought and wanted to change the numbers again; but I actually ran it with this, and it looked about right, to me). > Also, looks like the patch was abandoned to make this as a default change in > ODL. Is it better to just change this as the default in ODL? No Go, we can't. It's one of those "timeline" kind of things... one of the other odlparent parent committers (not myself, nor skitt) is against changing this in the short or even medium term, because it's an "incompatible change" - of log format output. Strictly speaking correct of course, but .. anyway. IMHO the possible benefits outweight the negligable disadvantage of the format change, for us downstream - I'm not aware of any automated tools parsing ODL logs in RHOSP which could trip over this change (shout if you are). This is why I suggest we make this change downstream rather sooner than later. If may also be applied upstream, possibly in odlparent 5.0.0 - this means the release after Neon, at the earliest (!) - not the sort of timeframe we want to work with here. Makes sense? Based on this, would you be willing to Take this issue? Or Janki?
OK Michael. I'm fine then with going the puppet-opendaylight route. I'll let Mike triage/assign this bug.
Taking this.
Two patches were commited in u/s's master branch that allow the configuration of these parameters, defaulting to the requested values. Once accepted merged to master they will be backported as required and then the status changed to MODIFED.
It seems that this will also help for bug 1651668 ...
As per depreciation notice [1], closing this bug. Please reopen if relevant for RHOSP13, as this is the only version shipping ODL. [1] https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/14/html-single/release_notes/index#deprecated_functionality