You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Amit Mondal (Jira)" <ji...@apache.org> on 2021/05/05 08:42:00 UTC
[jira] [Commented] (FELIX-6407) SCR Log Extension still logs using
the log level of the extended bundle
[ https://issues.apache.org/jira/browse/FELIX-6407?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17339531#comment-17339531 ]
Amit Mondal commented on FELIX-6407:
------------------------------------
PR - https://github.com/apache/felix-dev/pull/75
> 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)