Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(frontend logs): Silencing harmless log messages (and adding path for future) #7254

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
36 changes: 36 additions & 0 deletions datahub-frontend/app/log/LogMessageFilter.java
@@ -0,0 +1,36 @@
package log;

import ch.qos.logback.classic.spi.ILoggingEvent;
import ch.qos.logback.core.filter.AbstractMatcherFilter;
import ch.qos.logback.core.spi.FilterReply;
import java.util.ArrayList;
import java.util.List;


/**
* A Log Filter that can be configured to omit logs containing a specific message string.
* Configured inside logback.xml.
*/
public class LogMessageFilter extends AbstractMatcherFilter<ILoggingEvent> {

/**
* A set of messages to exclude.
*/
private final List<String> excluded = new ArrayList<>();
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice so the <excluded> tag in the xml file just automatically fills this out?


@Override
public FilterReply decide(ILoggingEvent event) {
if (!isStarted()) {
return FilterReply.NEUTRAL;
}

if (this.excluded.stream().anyMatch(message -> event.getFormattedMessage().contains(message))) {
return FilterReply.DENY;
}
return FilterReply.ACCEPT;
}

public void addExcluded(String message) {
this.excluded.add(message);
}
}
2 changes: 0 additions & 2 deletions datahub-frontend/app/security/AuthenticationManager.java
Expand Up @@ -58,8 +58,6 @@ public void handle(@Nonnull Callback[] callbacks) {
} else if (callback instanceof PasswordCallback) {
pc = (PasswordCallback) callback;
pc.setPassword(this.password.toCharArray());
} else {
Logger.warn("The submitted callback is unsupported! type: " + callback.getClass(), callback);
}
}
}
Expand Down
4 changes: 4 additions & 0 deletions datahub-frontend/conf/logback.xml
Expand Up @@ -10,6 +10,10 @@
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>INFO</level>
</filter>
<filter class="log.LogMessageFilter">
<excluded>Unable to renew the session. The session store may not support this feature</excluded>
<excluded>Preferred JWS algorithm: null not available. Using all metadata algorithms:</excluded>
</filter>
</appender>

<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
Expand Down
4 changes: 4 additions & 0 deletions datahub-frontend/run/logback.xml
Expand Up @@ -10,6 +10,10 @@
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>INFO</level>
</filter>
<filter class="log.LogMessageFilter">
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

woah this is super cool

<excluded>Unable to renew the session. The session store may not support this feature</excluded>
<excluded>Preferred JWS algorithm: null not available. Using all metadata algorithms:</excluded>
</filter>
</appender>

<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
Expand Down