package com.genersoft.iot.vmp.conf.druid;
|
|
import com.alibaba.druid.support.http.StatViewServlet;
|
import com.alibaba.druid.support.http.WebStatFilter;
|
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.boot.web.servlet.FilterRegistrationBean;
|
import org.springframework.boot.web.servlet.ServletRegistrationBean;
|
import org.springframework.context.annotation.Bean;
|
|
import javax.servlet.Filter;
|
import javax.servlet.Servlet;
|
|
/**
|
* druid监控配置
|
* @author
|
*/
|
public class DruidConfiguration {
|
|
@Value("${rj-druid-manage.allow:127.0.0.1}")
|
private String allow;
|
|
@Value("${rj-druid-manage.deny:}")
|
private String deny;
|
|
@Value("${rj-druid-manage.loginUsername:admin}")
|
private String loginUsername;
|
|
@Value("${rj-druid-manage.loginPassword:admin}")
|
private String loginPassword;
|
|
@Value("${rj-druid-manage.resetEnable:false}")
|
private String resetEnable;
|
|
/**
|
* druid监控页面开启
|
*/
|
@Bean
|
public ServletRegistrationBean druidServlet() {
|
ServletRegistrationBean<Servlet> servletRegistrationBean = new ServletRegistrationBean<>(new StatViewServlet(), "/druid/*");
|
// IP白名单
|
servletRegistrationBean.addInitParameter("allow", allow);
|
// IP黑名单(共同存在时,deny优先于allow)
|
servletRegistrationBean.addInitParameter("deny", deny);
|
//控制台管理用户
|
servletRegistrationBean.addInitParameter("loginUsername", loginUsername);
|
servletRegistrationBean.addInitParameter("loginPassword", loginPassword);
|
//是否能够重置数据 禁用HTML页面上的“Reset All”功能
|
servletRegistrationBean.addInitParameter("resetEnable", resetEnable);
|
return servletRegistrationBean;
|
}
|
|
/**
|
* druid url监控配置
|
*/
|
@Bean
|
public FilterRegistrationBean filterRegistrationBean() {
|
FilterRegistrationBean<Filter> filterRegistrationBean = new FilterRegistrationBean<>(new WebStatFilter());
|
filterRegistrationBean.addUrlPatterns("/*");
|
filterRegistrationBean.addInitParameter("exclusions", "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*");
|
return filterRegistrationBean;
|
}
|
|
|
}
|