[ 
https://issues.apache.org/jira/browse/FELIX-6407?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Amit Mondal updated FELIX-6407:
-------------------------------
    Summary: SCR Log Extension still logs using the log level of the extended 
bundle  (was: SCR Log Extension still logs using the log level of the other 
bundle)

> SCR Log Extension still logs using the log level of the extended bundle
> -----------------------------------------------------------------------
>
>                 Key: FELIX-6407
>                 URL: https://issues.apache.org/jira/browse/FELIX-6407
>             Project: Felix
>          Issue Type: Bug
>          Components: Declarative Services (SCR)
>    Affects Versions: scr-2.1.24, scr-2.1.26
>            Reporter: Amit Mondal
>            Priority: Minor
>              Labels: pull-request-available
>
> The SCR incorporates 3 different types of logging:
>  * Logging for SCR main code (_*ScrLogger*_)
>  * Logging on behalf of the bundle comprising the SCR component 
> (_*BundleLogger*_)
>  * Logging on behalf of the component under processing (_*ComponentLogger*_)
> According to the current implementation, the SCR logging is by default 
> enabled and it logs using the log levels of the bundles comprising the SCR 
> components. 
> This [PR|https://github.com/apache/felix-dev/pull/36] by [~pkriens] has been 
> merged to introduce a non-OSGi standard extension which enables consumers to 
> extend the SCR logging functionality, that is, a consumer can on demand set 
> the log level of the SCR bundle itself which after setting a specific 
> property (_*ds.log.extension*_) will be enabled. Now, SCR will be able to use 
> the log level of itself for all the logging. It won't use the log levels of 
> the bundles under processing.
> The specified SCR versions still log using the log levels of the bundles 
> under processing even though _*ds.log.extension*_ framework property is 
> correctly set.
> This feature to extend SCR logging is useful in very low memory IoT devices 
> where many bundles (>200) are installed and SCR's intensive logging becomes 
> very costly.
> The feature can further be extended to disable the logging completely. Hence, 
> I am proposing the following approach:
> We should introduce another framework property to disable the SCR logging 
> completely, let's say _*ds.log.enabled*_
> By default, this property will not be set which means the logging is enabled 
> by default, otherwise consumer can decide to disable the logging by setting 
> it to _*false*_
> If the logging is still enabled, the consumer now has two options:
>  * Use the log level of the extended bundle (bundle under processing)
>  * Use the log level of the SCR bundle itself
> If we decide to let SCR use its own log level, the _*ds.log.extension*_ needs 
> to be set.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to