add:生产es配置

This commit is contained in:
zhangzhiqiang
2023-02-10 14:38:10 +08:00
parent 9288fde512
commit 2e9cce2284
6 changed files with 132 additions and 27 deletions

View File

@@ -452,6 +452,11 @@
<artifactId>easyexcel</artifactId> <artifactId>easyexcel</artifactId>
<version>2.2.6</version> <version>2.2.6</version>
</dependency> </dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.20</version>
</dependency>
</dependencies> </dependencies>
<distributionManagement> <distributionManagement>

View File

@@ -0,0 +1,98 @@
package org.nl.config;
import com.alibaba.druid.filter.FilterChain;
import com.alibaba.druid.filter.FilterEventAdapter;
import com.alibaba.druid.proxy.jdbc.JdbcParameter;
import com.alibaba.druid.proxy.jdbc.PreparedStatementProxy;
import com.alibaba.druid.proxy.jdbc.ResultSetProxy;
import com.alibaba.druid.proxy.jdbc.StatementProxy;
import com.alibaba.druid.sql.SQLUtils;
import com.alibaba.druid.util.JdbcUtils;
import com.alibaba.fastjson.JSON;
import com.mysql.cj.jdbc.result.ResultSetImpl;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.MDC;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map;
/*
* @author ZZQ
* @Date 2023/2/10 11:27 上午
*/
@Slf4j
public class DruidFilter extends FilterEventAdapter {
@Override
public int preparedStatement_executeUpdate(FilterChain chain, PreparedStatementProxy statement) throws SQLException {
return super.preparedStatement_executeUpdate(chain, statement);
}
@Override
public int statement_executeUpdate(FilterChain chain, StatementProxy statement, String sql) throws SQLException {
return super.statement_executeUpdate(chain, statement, sql);
}
@Override
protected void statementExecuteAfter(StatementProxy statement, String sql, boolean result) {
String traceId = MDC.get("traceId");
int size = statement.getParametersSize();
String executeSql = sql;
int count = 0;
try {
count=statement.getUpdateCount();
}catch (Exception ex){ }
if (StringUtils.isNotEmpty(traceId) && count>0) {
if (size > 0) {
Collection<JdbcParameter> values = statement.getParameters().values();
List<Object> params = new ArrayList<>();
for (JdbcParameter value : values) {
params.add(value.getValue());
}
executeSql = SQLUtils.format(executeSql, JdbcUtils.MYSQL, params);
}
log.info("[----SQL----][update][ SQL: {} ]", executeSql);
}
super.statementExecuteAfter(statement, sql, result);
}
@Override
public ResultSetProxy statement_getResultSet(FilterChain chain, StatementProxy statement) throws SQLException {
ResultSetProxy rs = super.statement_getResultSet(chain, statement);
String executeSql = statement.getLastExecuteSql();
String traceId = MDC.get("traceId");
if (StringUtils.isNotEmpty(traceId)){
int result = 0;
if (rs != null) {
ResultSetImpl rss = rs.getResultSetRaw().unwrap(ResultSetImpl.class);
result = rss.getRows().size();
}
try {
int size = statement.getParametersSize();
if (size>0){
Collection<JdbcParameter> values = statement.getParameters().values();
List<Object> params = new ArrayList<>();
for (JdbcParameter value : values) {
params.add(value.getValue());
}
executeSql = SQLUtils.format(executeSql, JdbcUtils.MYSQL, params);
}
}catch (Exception ex){
log.warn("[-SQL解析异常-][{}]",ex.getMessage());
}
log.info("[----SQL----][select][执行结果:{}][ SQL: {} ]",result, executeSql);
}
return rs;
}
}

View File

@@ -116,21 +116,20 @@ public class LogAspect {
} }
} }
}catch (Exception ex){ }catch (Exception ex){
StringBuffer errorInfo = new StringBuffer(); StringBuffer errorStack = new StringBuffer();
errorInfo.append(ex.getMessage()).append("\n"); String errorMsg = ex.getMessage();
int x = 0; int x = 0;
StackTraceElement[] stackTrace = ex.getStackTrace(); StackTraceElement[] stackTrace = ex.getStackTrace();
if (stackTrace!=null && stackTrace.length>0){ if (stackTrace!=null && stackTrace.length>0){
errorInfo.append("---堆栈信息:");
for (StackTraceElement stack : stackTrace) { for (StackTraceElement stack : stackTrace) {
x++; x++;
errorInfo.append(stack.toString()).append("\n"); errorStack.append(stack.toString()).append(" | ");
if (x>10){ if (x>10){
break; break;
} }
} }
} }
log.error("[--requestError--][请求接口:{}][请求参数:{}]异常信息 :{}", url,params, errorInfo.toString()); log.error("[-requestError-][请求接口:{}]【异常信息:{}】[请求参数:{}][异常堆栈:{}]", url,errorMsg,params, errorStack.toString());
Log log = new Log("ERROR", System.currentTimeMillis() - comming); Log log = new Log("ERROR", System.currentTimeMillis() - comming);
log.setExceptionDetail(ThrowableUtil.getStackTrace(ex).getBytes()); log.setExceptionDetail(ThrowableUtil.getStackTrace(ex).getBytes());
logService.save(getUsername(), StringUtils.getBrowser(request), StringUtils.getIp(request), (ProceedingJoinPoint) joinPoint, log); logService.save(getUsername(), StringUtils.getBrowser(request), StringUtils.getIp(request), (ProceedingJoinPoint) joinPoint, log);

View File

@@ -0,0 +1 @@
druid.filters.DruidFilter=org.nl.config.DruidFilter

View File

@@ -23,10 +23,10 @@ spring:
db-type: com.alibaba.druid.pool.DruidDataSource db-type: com.alibaba.druid.pool.DruidDataSource
driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
# url: jdbc:log4jdbc:mysql://${DB_HOST:10.1.3.91}:${DB_PORT:3306}/${DB_NAME:lms_test2}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true # url: jdbc:log4jdbc:mysql://${DB_HOST:10.1.3.91}:${DB_PORT:3306}/${DB_NAME:lms_test2}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true
url: jdbc:log4jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:3306}/${DB_NAME:hl_tb_lms}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true url: jdbc:log4jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:3306}/${DB_NAME:lms}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true
# username: ${DB_USER:root} # username: ${DB_USER:root}
username: ${DB_USER:root} username: ${DB_USER:root}
password: ${DB_PWD:Root.123456} password: ${DB_PWD:942464Yy}
# 初始连接数 # 初始连接数
initial-size: 5 initial-size: 5
# 最小连接数 # 最小连接数
@@ -58,16 +58,17 @@ spring:
enabled: true enabled: true
url-pattern: /druid/* url-pattern: /druid/*
reset-enable: false reset-enable: false
filter: filters:
stat: DruidFilter,stat
enabled: true # stat:
# 记录慢SQL # enabled: true
log-slow-sql: true # # 记录慢SQL
slow-sql-millis: 1000 # log-slow-sql: true
merge-sql: true # slow-sql-millis: 1000
wall: # merge-sql: true
config: # wall:
multi-statement-allow: true # config:
# multi-statement-allow: true
redis: redis:
#数据库索引 #数据库索引
database: ${REDIS_DB:15} database: ${REDIS_DB:15}

View File

@@ -59,16 +59,17 @@ spring:
enabled: true enabled: true
url-pattern: /druid/* url-pattern: /druid/*
reset-enable: false reset-enable: false
filter: filters:
stat: DruidFilter,stat
enabled: true # stat:
# 记录慢SQL # enabled: true
log-slow-sql: true # # 记录慢SQL
slow-sql-millis: 1000 # log-slow-sql: true
merge-sql: true # slow-sql-millis: 1000
wall: # merge-sql: true
config: # wall:
multi-statement-allow: true # config:
# multi-statement-allow: true
redis: redis:
#数据库索引 #数据库索引
database: ${REDIS_DB:14} database: ${REDIS_DB:14}