Skip to content

Latest commit

 

History

History
81 lines (63 loc) · 2.07 KB

README.md

File metadata and controls

81 lines (63 loc) · 2.07 KB

datasource-proxy-log-formatter

Extracts, interpolates, formats and pretty prints SQL from datasource-proxy json logs.

Implementation details

Screenshots

image

Configuring Datasource Proxy for Spring Boot Tests

pom.xml

 <dependency>
    <groupId>net.ttddyy</groupId>
    <artifactId>datasource-proxy</artifactId>
    <version>1.7</version>
    <scope>test</scope>
</dependency>

DatasourceProxyConfig.java

package my.app;

// imports skipped

@TestConfiguration
class DatasourceProxyConfig implements BeanPostProcessor {

    @Override
    public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {

        if (bean instanceof DataSource) {
            return ProxyDataSourceBuilder
                .create((DataSource) bean)
                .name("dataSource-proxy")
                .logQueryBySlf4j(SLF4JLogLevel.DEBUG)
                .asJson()
                .build();
        }

        return bean;
    }
}

BaseIT.java

package my.app;

// imports skipped

@SpringBootTest(classes = {
    Application.class,
    DatasourceProxyConfig.class
})
@RunWith(SpringRunner.class)
@ActiveProfiles("integration")
public abstract class BaseIT {
    // ...
}

application-integration.yml

# ...
logging:
  level:
    # Set SLF4JQueryLoggingListener log level to "debug" to enable Datasource Proxy Query logging
    net.ttddyy.dsproxy.listener.logging.SLF4JQueryLoggingListener: off
# ...

For more configuration examples check datasource-proxy-examples