Skip to content

Commit faa56fd

Browse files
Adapt to servlet refactoring
1 parent f1165cf commit faa56fd

File tree

2 files changed

+22
-6
lines changed

2 files changed

+22
-6
lines changed

sample-spring-boot/src/main/java/com/sap/hcp/cf/logging/sample/springboot/SampleAppSpringBootApplication.java

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,13 @@
1212
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
1313

1414
import com.sap.hcp.cf.logging.sample.springboot.keystore.KeyStoreDynLogConfiguration;
15-
import com.sap.hcp.cf.logging.servlet.dynlog.DynLogConfiguration;
15+
import com.sap.hcp.cf.logging.servlet.dynlog.DynamicLogLevelConfiguration;
16+
import com.sap.hcp.cf.logging.servlet.filter.AddHttpHeadersToLogContextFilter;
17+
import com.sap.hcp.cf.logging.servlet.filter.AddVcapEnvironmentToLogContextFilter;
18+
import com.sap.hcp.cf.logging.servlet.filter.CompositeFilter;
19+
import com.sap.hcp.cf.logging.servlet.filter.CorrelationIdFilter;
20+
import com.sap.hcp.cf.logging.servlet.filter.DynamicLogLevelFilter;
21+
import com.sap.hcp.cf.logging.servlet.filter.GenerateRequestLogFilter;
1622
import com.sap.hcp.cf.logging.servlet.filter.RequestLoggingFilter;
1723

1824
@SpringBootApplication
@@ -31,9 +37,10 @@ public static void main(String[] args) {
3137
* @return a registration of the {@link RequestLoggingFilter}
3238
*/
3339
@Bean
34-
public FilterRegistrationBean<RequestLoggingFilter> loggingFilter(@Autowired DynLogConfiguration dynLogConfig) {
35-
FilterRegistrationBean<RequestLoggingFilter> registrationBean = new FilterRegistrationBean<>();
36-
registrationBean.setFilter(new RequestLoggingFilter(() -> dynLogConfig));
40+
public FilterRegistrationBean<MyLoggingFilter> loggingFilter(
41+
@Autowired DynamicLogLevelConfiguration dynLogConfig) {
42+
FilterRegistrationBean<MyLoggingFilter> registrationBean = new FilterRegistrationBean<>();
43+
registrationBean.setFilter(new MyLoggingFilter(dynLogConfig));
3744
registrationBean.setName("request-logging");
3845
registrationBean.addUrlPatterns("/*");
3946
registrationBean.setDispatcherTypes(DispatcherType.REQUEST);
@@ -48,4 +55,13 @@ public FilterRegistrationBean<RequestLoggingFilter> loggingFilter(@Autowired Dyn
4855
public Clock clock() {
4956
return Clock.systemUTC();
5057
}
58+
59+
private class MyLoggingFilter extends CompositeFilter {
60+
61+
private MyLoggingFilter(DynamicLogLevelConfiguration dynLogConfig) {
62+
super(new AddVcapEnvironmentToLogContextFilter(), new AddHttpHeadersToLogContextFilter(),
63+
new CorrelationIdFilter(), new DynamicLogLevelFilter(() -> dynLogConfig),
64+
new GenerateRequestLogFilter());
65+
}
66+
}
5167
}

sample-spring-boot/src/main/java/com/sap/hcp/cf/logging/sample/springboot/keystore/KeyStoreDynLogConfiguration.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,15 @@
66
import org.springframework.beans.factory.annotation.Value;
77
import org.springframework.stereotype.Component;
88

9-
import com.sap.hcp.cf.logging.servlet.dynlog.DynLogConfiguration;
9+
import com.sap.hcp.cf.logging.servlet.dynlog.DynamicLogLevelConfiguration;
1010

1111
/**
1212
* Provides the public key for JWT validation out of the keystore.
1313
* Otherwise adheres to the configuration by environment variables.
1414
*
1515
*/
1616
@Component
17-
public class KeyStoreDynLogConfiguration implements DynLogConfiguration {
17+
public class KeyStoreDynLogConfiguration implements DynamicLogLevelConfiguration {
1818

1919
private TokenKeyProvider keyProvider;
2020
private String dynLogHeaderKey;

0 commit comments

Comments
 (0)