This is an automated email from the ASF dual-hosted git repository.
markap14 pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/nifi.git
The following commit(s) were added to refs/heads/main by this push:
new 6cffc78ad2 NIFI-12025: Fixed duplicated bulletin messages (#7670)
6cffc78ad2 is described below
commit 6cffc78ad225c4b6228cbc78564d6029fb470ed2
Author: Peter Turcsanyi <[email protected]>
AuthorDate: Fri Sep 8 19:16:44 2023 +0200
NIFI-12025: Fixed duplicated bulletin messages (#7670)
---
.../nifi/logging/repository/StandardLogRepository.java | 1 +
.../apache/nifi/logging/TestStandardLogRepository.java | 18 +++++++++++++++++-
2 files changed, 18 insertions(+), 1 deletion(-)
diff --git
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-components/src/main/java/org/apache/nifi/logging/repository/StandardLogRepository.java
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-components/src/main/java/org/apache/nifi/logging/repository/StandardLogRepository.java
index f7cefdc452..127e14756f 100644
---
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-components/src/main/java/org/apache/nifi/logging/repository/StandardLogRepository.java
+++
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-components/src/main/java/org/apache/nifi/logging/repository/StandardLogRepository.java
@@ -127,6 +127,7 @@ public class StandardLogRepository implements LogRepository
{
try {
final Set<LogObserver> observersCopy = new HashSet<>(observers);
observers.clear();
+ observersPerLogLevel.clear();
for (final LogObserver observer : observersCopy) {
addObserver(level, observer);
diff --git
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-components/src/test/java/org/apache/nifi/logging/TestStandardLogRepository.java
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-components/src/test/java/org/apache/nifi/logging/TestStandardLogRepository.java
index 84e936acd5..3ebf090e99 100644
---
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-components/src/test/java/org/apache/nifi/logging/TestStandardLogRepository.java
+++
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-components/src/test/java/org/apache/nifi/logging/TestStandardLogRepository.java
@@ -66,11 +66,27 @@ public class TestStandardLogRepository {
MockFlowFile mockFlowFile1 = new MockFlowFile(1L);
MockFlowFile mockFlowFile2 = new MockFlowFile(2L);
- repo.addLogMessage(LogLevel.INFO, "Testing {} {} flowfiles are not
being shown in exception message", new Object[]{mockFlowFile1, mockFlowFile2});
+ repo.addLogMessage(LogLevel.INFO, "Testing {} {} FlowFiles are not
being shown in exception message", new Object[]{mockFlowFile1, mockFlowFile2});
assertNull(observer.getMessages().get(0).getFlowFileUuid());
}
+ @Test
+ public void testLogRepositoryAfterLogLevelChange() {
+ StandardLogRepository repo = new StandardLogRepository();
+ MockLogObserver observer = new MockLogObserver();
+ repo.addObserver(LogLevel.ERROR, observer);
+
+ repo.setObservationLevel(LogLevel.ERROR);
+
+ IOException exception = new IOException("exception");
+
+ repo.addLogMessage(LogLevel.ERROR, "Testing {} to get exception
message <{}>", new Object[]{observer.getClass().getName(), exception});
+
+ assertEquals(1, observer.getMessages().size());
+ assertEquals("Testing
org.apache.nifi.logging.TestStandardLogRepository$MockLogObserver to get
exception message <exception>", observer.getMessages().get(0).getMessage());
+ }
+
private static class MockLogObserver implements LogObserver {
private final List<LogMessage> messages = new ArrayList<>();