[ https://issues.apache.org/jira/browse/UIMA-5324?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15868684#comment-15868684 ]
Marshall Schor edited comment on UIMA-5324 at 2/27/17 4:54 PM: --------------------------------------------------------------- for (1): have the UIMA logger facade go (by default) to the SLF4j facade. This allows UIMA to not have its own back-end for logging, and to pick up and use whatever back-end logging might be configured in an embedding application. for (2): include the slf4j-jdk14 jar in the UIMA binary distribution. The out-of-the-box launchers configure the class path to include this jar. This jar is the slf4j back-end connection to the built-in-to-Java logger, which was the v2 default, so by out-of-the-box default, logging will be like it is in v2. for (3): --add a new JVM system property: -Duima.suppress_annotator_logging. If specified, then annotator loggers are suppressed.-- --add a new API method: suppressAnnotatorLogging(boolean). This API will be both global (in the UIMAFramework class as a static), and in the UimaContext; the global one overrides. The implementation will only suppress logging by loggers obtained using the standard methods on the Annotator base implementations, one of uimaContext().getLogger(), or getUimaLogger(), or getSlf4jLogger().-- add a new parameter that can be set in the Additional Parameters Map passed to the produceAnalysisEngine or produceResource call; the key is <code>AnalysisEngine.PARAM_THROTTLE_EXCESSIVE_ANNOTATOR_LOGGING</code>, and the value is the number of messages allowed before logging is suppressed. This value is applied to each logging level, separately. To suppress all logging use 0. was (Author: schor): for (1): have the UIMA logger facade go (by default) to the SLF4j facade. This allows UIMA to not have its own back-end for logging, and to pick up and use whatever back-end logging might be configured in an embedding application. for (2): include the slf4j-jdk14 jar in the UIMA binary distribution. The out-of-the-box launchers configure the class path to include this jar. This jar is the slf4j back-end connection to the built-in-to-Java logger, which was the v2 default, so by out-of-the-box default, logging will be like it is in v2. for (3): --add a new JVM system property: -Duima.suppress_annotator_logging. If specified, then annotator loggers are suppressed.-- add a new API method: suppressAnnotatorLogging(boolean). This API will be both global (in the UIMAFramework class as a static), and in the UimaContext; the global one overrides. The implementation will only suppress logging by loggers obtained using the standard methods on the Annotator base implementations, one of uimaContext().getLogger(), or getUimaLogger(), or getSlf4jLogger(). > uv3 logging: change defaults, add suppress logging from annotators capability > ----------------------------------------------------------------------------- > > Key: UIMA-5324 > URL: https://issues.apache.org/jira/browse/UIMA-5324 > Project: UIMA > Issue Type: Improvement > Components: Core Java Framework > Reporter: Marshall Schor > Assignee: Marshall Schor > Priority: Minor > Fix For: 3.0.0SDK-alpha02 > > > per discussion on dev list: > 1) Make UIMA more embeddable by having it able to not have its own back-end > for logging. > 2) Never-the-less, have the out-of-the-box experience do reasonable logging. > 3) Provide a simple, not logging-back-end-specific, way to globally suppress > logging from Annotator code. -- This message was sent by Atlassian JIRA (v6.3.15#6346)