From c9768346fc8bc1cc6326e06125deaf57ff423eaf Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: Tue, 19 Sep 2023 16:17:07 +0800
Subject: [PATCH] 修改三厂数字化使用原生jdbc连接
---
src/main/java/com/ard/alarm/digitization/mapper/DataBridgeMapper.java | 2
src/main/java/com/ard/alarm/stealelec/service/StealElecAlarmService.java | 18 +
src/main/resources/logback-spring.xml | 105 +++++++----
src/main/java/com/ard/alarm/external/mapper/ArdEquipExternalMapper.java | 2
src/main/java/com/ard/utils/jdbc/Query.java | 72 ++++++++
src/main/java/com/ard/alarm/digitization/service/impl/DataBridgeServiceImpl.java | 33 ++-
src/main/resources/application-prod.yml | 7
pom.xml | 6
/dev/null | 49 -----
src/main/java/com/ard/utils/jdbc/Conn.java | 103 +++++++++++
src/main/java/com/ard/alarm/camera/mapper/ArdCamerasMapper.java | 2
src/main/resources/application-dev.yml | 114 +++---------
src/main/java/com/ard/alarm/radar/mapper/ArdEquipRadarMapper.java | 2
13 files changed, 308 insertions(+), 207 deletions(-)
diff --git a/pom.xml b/pom.xml
index 88f7b55..fd515f5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -99,12 +99,6 @@
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.14</version>
</dependency>
- <!-- 动态数据源 -->
- <dependency>
- <groupId>com.baomidou</groupId>
- <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
- <version>3.5.0</version>
- </dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
diff --git a/src/main/java/com/ard/alarm/camera/mapper/ArdCamerasMapper.java b/src/main/java/com/ard/alarm/camera/mapper/ArdCamerasMapper.java
index 76908d2..c75f1df 100644
--- a/src/main/java/com/ard/alarm/camera/mapper/ArdCamerasMapper.java
+++ b/src/main/java/com/ard/alarm/camera/mapper/ArdCamerasMapper.java
@@ -2,7 +2,6 @@
import java.util.List;
import com.ard.alarm.camera.domain.ArdCameras;
-import com.baomidou.dynamic.datasource.annotation.DS;
import org.apache.ibatis.annotations.Mapper;
/**
@@ -12,7 +11,6 @@
* @date 2023-02-11
*/
@Mapper
-@DS("master")
public interface ArdCamerasMapper
{
/**
diff --git a/src/main/java/com/ard/alarm/digitization/mapper/DataBridgeMapper.java b/src/main/java/com/ard/alarm/digitization/mapper/DataBridgeMapper.java
index f21b1cb..498665e 100644
--- a/src/main/java/com/ard/alarm/digitization/mapper/DataBridgeMapper.java
+++ b/src/main/java/com/ard/alarm/digitization/mapper/DataBridgeMapper.java
@@ -1,11 +1,9 @@
package com.ard.alarm.digitization.mapper;
import com.ard.alarm.digitization.model.DataBridge;
-import com.baomidou.dynamic.datasource.annotation.DS;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
-@DS("oracle")
@Mapper
public interface DataBridgeMapper {
diff --git a/src/main/java/com/ard/alarm/digitization/service/impl/DataBridgeServiceImpl.java b/src/main/java/com/ard/alarm/digitization/service/impl/DataBridgeServiceImpl.java
index 76f1482..fb31a67 100644
--- a/src/main/java/com/ard/alarm/digitization/service/impl/DataBridgeServiceImpl.java
+++ b/src/main/java/com/ard/alarm/digitization/service/impl/DataBridgeServiceImpl.java
@@ -1,20 +1,19 @@
package com.ard.alarm.digitization.service.impl;
import com.alibaba.fastjson2.JSON;
-import com.alibaba.fastjson2.JSONObject;
import com.ard.alarm.digitization.mapper.DataBridgeMapper;
import com.ard.alarm.digitization.model.DataBridge;
import com.ard.alarm.digitization.service.DataBridgeService;
-import com.ard.alarm.stealelec.domain.ArdAlarmStealelec;
+import com.ard.utils.jdbc.Query;
import com.ard.utils.mqtt.MqttConsumer;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service;
-
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
-import java.util.Map;
+
/**
* @Description:
@@ -23,29 +22,45 @@
* @Date: 2023年09月18日16:41:50
**/
@Service
-@Slf4j(topic = "alarm")
+@Slf4j(topic = "digitization3")
public class DataBridgeServiceImpl implements DataBridgeService {
+
+
@Resource
DataBridgeMapper databridgeMapper;
public static Date lastTime;
+ @Value("${spring.digitization3.enabled}")
+ private Boolean enabled;
@Scheduled(cron = "0/5 * * * * ?")
public void alarmHandler() {
+ List<DataBridge> dataBridgeList;
try {
- List<DataBridge> dataBridgeList = selectDatabridgeList(new DataBridge());
+ if(!enabled)
+ {
+ return;
+ }
+ if (lastTime == null) {
+ //初次查询,只获取10条最近数据。
+ dataBridgeList = Query.getAlarmData(null, 10);
+ if (dataBridgeList.size() > 0) {
+ lastTime = dataBridgeList.get(0).getDateTime();
+ }
+ } else {
+ //查询大于上次查询最后一条数据的时间
+ dataBridgeList = Query.getAlarmData(lastTime, null);
+ }
if (dataBridgeList.size() > 0) {
for (DataBridge data : dataBridgeList) {
String[] elem = data.getValue().split(";");
data.setWellNo(elem[0]);
data.setAlarmType(elem[1]);
data.setAlarmTime(elem[2]);
-
MqttConsumer.publish(2, false, "digitization3", JSON.toJSONString(data));
-
}
}
} catch (Exception ex) {
- log.error("3厂数字化报警数据推送异常:" + ex.getMessage());
+ log.error("3厂数字化报警数据处理异常:" + ex.getMessage());
}
}
diff --git a/src/main/java/com/ard/alarm/external/mapper/ArdEquipExternalMapper.java b/src/main/java/com/ard/alarm/external/mapper/ArdEquipExternalMapper.java
index f523f5d..e5b3a23 100644
--- a/src/main/java/com/ard/alarm/external/mapper/ArdEquipExternalMapper.java
+++ b/src/main/java/com/ard/alarm/external/mapper/ArdEquipExternalMapper.java
@@ -2,7 +2,6 @@
import java.util.List;
import com.ard.alarm.external.domain.ArdEquipExternal;
-import com.baomidou.dynamic.datasource.annotation.DS;
import org.apache.ibatis.annotations.Mapper;
@@ -13,7 +12,6 @@
* @date 2023-03-13
*/
@Mapper
-@DS("master")
public interface ArdEquipExternalMapper
{
/**
diff --git a/src/main/java/com/ard/alarm/radar/mapper/ArdEquipRadarMapper.java b/src/main/java/com/ard/alarm/radar/mapper/ArdEquipRadarMapper.java
index dcfec83..2d5755c 100644
--- a/src/main/java/com/ard/alarm/radar/mapper/ArdEquipRadarMapper.java
+++ b/src/main/java/com/ard/alarm/radar/mapper/ArdEquipRadarMapper.java
@@ -2,7 +2,6 @@
import java.util.List;
import com.ard.alarm.radar.domain.ArdEquipRadar;
-import com.baomidou.dynamic.datasource.annotation.DS;
import org.apache.ibatis.annotations.Mapper;
/**
@@ -12,7 +11,6 @@
* @date 2023-03-11
*/
@Mapper
-@DS("master")
public interface ArdEquipRadarMapper
{
/**
diff --git a/src/main/java/com/ard/alarm/stealelec/service/StealElecAlarmService.java b/src/main/java/com/ard/alarm/stealelec/service/StealElecAlarmService.java
index 1cc832e..84bf9d4 100644
--- a/src/main/java/com/ard/alarm/stealelec/service/StealElecAlarmService.java
+++ b/src/main/java/com/ard/alarm/stealelec/service/StealElecAlarmService.java
@@ -10,6 +10,7 @@
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
+
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
@@ -24,12 +25,15 @@
*/
@Slf4j(topic = "stealAlarm")
@Service
-public class StealElecAlarmService{
+public class StealElecAlarmService {
@Resource
RestTemplate restTemplate;
@Value("${spring.stealelec.url}")
private String stealElecUrl;
- List<String> tempList=new ArrayList<>();
+ @Value("${spring.stealelec.enabled}")
+ private Boolean enabled;
+ List<String> tempList = new ArrayList<>();
+
/**
* @描述 获取api数据推送mqtt
* @参数 []
@@ -39,9 +43,12 @@
* @修改人和其它信息
*/
@Async("alarm")
- // @Scheduled(cron="0/5 * * * * ?")
+ @Scheduled(cron = "0/5 * * * * ?")
public void alarmHandler() {
try {
+ if (!enabled) {
+ return;
+ }
String allAlarmData = restTemplate.getForObject(stealElecUrl, String.class);
//剔除所有\符号
String message = allAlarmData.replaceAll("\\\\", "");
@@ -60,11 +67,10 @@
String JSONStr = JSON.toJSONString(object);
//转成实体对象
ArdAlarmStealelec wd = JSON.parseObject(JSONStr, ArdAlarmStealelec.class);
- if(tempList.contains(wd.getId()))
- {
+ if (tempList.contains(wd.getId())) {
continue;
}
- MqttConsumer.publish(2,false,"stealelec", JSON.toJSONString(wd));
+ MqttConsumer.publish(2, false, "stealelec", JSON.toJSONString(wd));
tempList.add(wd.getId());
}
}
diff --git a/src/main/java/com/ard/config/DruidConfig.java b/src/main/java/com/ard/config/DruidConfig.java
deleted file mode 100644
index 70619ee..0000000
--- a/src/main/java/com/ard/config/DruidConfig.java
+++ /dev/null
@@ -1,49 +0,0 @@
-package com.ard.config;
-import com.alibaba.druid.filter.Filter;
-import com.alibaba.druid.filter.stat.StatFilter;
-import com.alibaba.druid.pool.DruidDataSource;
-import com.alibaba.druid.support.http.StatViewServlet;
-import com.google.common.collect.Lists;
-import org.springframework.boot.context.properties.ConfigurationProperties;
-import org.springframework.boot.web.servlet.ServletRegistrationBean;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-/**
- * @Description: druid连接池的配置,配置如何处理慢sql,
- * @ClassName: DruidConfig
- * @Author: 刘苏义
- * @Date: 2023年07月04日15:29
- * @Version: 1.0
- **/
-
-public class DruidConfig {
- //这个注解读取配置文件前缀为prefix的配置,将外部的配置文件与这里绑定
- @ConfigurationProperties(prefix = "spring.datasource.druid")
- //容器的开启与关闭
-// @Bean(initMethod = "init",destroyMethod = "close")
-// public DruidDataSource dataSource(){
-// DruidDataSource dataSource=new DruidDataSource();
-// dataSource.setProxyFilters(Lists.newArrayList(statFilter()));
-// return dataSource;
-// }
- //bean注解,成为spring的bean,利用filter将慢sql的日志打印出来
- @Bean
- public Filter statFilter(){
- StatFilter statFilter=new StatFilter();
- //多长时间定义为慢sql,这里定义为5s
- statFilter.setSlowSqlMillis(5000);
- //是否打印出慢日志
- statFilter.setLogSlowSql(true);
- //是否将日志合并起来
- statFilter.setMergeSql(true);
- return statFilter;
- }
- //这是配置druid的监控
- //这是配置druid的监控与配置文件中功能一样
- //#stat-view-servlet:
- // #enabled:true
-// @Bean
-// public ServletRegistrationBean servletRegistrationBean(){
-// return new ServletRegistrationBean(new StatViewServlet(),"/druid/*");
-// }
-}
\ No newline at end of file
diff --git a/src/main/java/com/ard/utils/jdbc/Conn.java b/src/main/java/com/ard/utils/jdbc/Conn.java
new file mode 100644
index 0000000..d1d4dd5
--- /dev/null
+++ b/src/main/java/com/ard/utils/jdbc/Conn.java
@@ -0,0 +1,103 @@
+package com.ard.utils.jdbc;
+
+/**
+ * @Description:
+ * @ClassName: GetConn
+ * @Author: 刘苏义
+ * @Date: 2023年09月19日13:12:38
+ **/
+
+import org.springframework.core.io.ClassPathResource;
+
+import javax.annotation.Resource;
+import java.sql.*;
+import java.util.Properties;
+
+public class Conn {
+ //jdbc连接需要用到的三个参数
+ private String url="jdbc:oracle:thin:@//112.98.126.2:21521/orcl";
+ private String user="c##ard_user";
+ private String pwd="123456";
+
+ //创建一个对象 设置为静态私有 (单例模式)
+ private static Conn gc=null;
+
+ //将构造函数设为private型 防止外部实例化对象 (通过反射或反序列化可以破解单例)
+ private Conn(){};
+
+ //静态代码块,在类加载进内存时就完成对对象的特殊的初始化(这个动作发生在类的构造器执行之前,也就是在没有对象存在的情况下,静态代码就已经完成了对对象的特殊的处理 ),此处的作用是,当jdbc的驱动器加载时,就自动创建一个自己。
+ static{
+ try {
+ //注册驱动
+ Class.forName("oracle.jdbc.driver.OracleDriver");
+ } catch (ClassNotFoundException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+
+ //判断GetConn实例化的对象是否存在 不存在就实例化一个
+ //synchronized 线程锁 防止多个线程抢占资源 防止死锁
+ public static Conn getGc(){
+ if(gc==null){
+ synchronized (Conn.class) {
+ if(gc==null){
+ gc=new Conn();
+ }
+ }
+ }
+ return gc;
+ }
+
+ //返回一个Connection连接
+ public Connection getCon() throws SQLException{
+ return DriverManager.getConnection(url, user, pwd);
+ }
+ //释放资源
+ public void closeAll(ResultSet rs, Statement st, Connection con){
+ if(rs!=null){
+ try {
+ rs.close();
+ } catch (SQLException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }finally{
+ if(st!=null){
+ try {
+ st.close();
+ } catch (SQLException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }finally{
+ if(con!=null){
+ try {
+ con.close();
+ } catch (SQLException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+ }
+ }
+ }
+ }
+ if(st!=null){
+ try {
+ st.close();
+ } catch (SQLException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }finally{
+ if(con!=null){
+ try {
+ con.close();
+ } catch (SQLException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+ }
+ }
+ }
+
+}
\ No newline at end of file
diff --git a/src/main/java/com/ard/utils/jdbc/Query.java b/src/main/java/com/ard/utils/jdbc/Query.java
new file mode 100644
index 0000000..9134a2f
--- /dev/null
+++ b/src/main/java/com/ard/utils/jdbc/Query.java
@@ -0,0 +1,72 @@
+package com.ard.utils.jdbc;
+
+/**
+ * @Description:
+ * @ClassName: Query
+ * @Author: 刘苏义
+ * @Date: 2023年09月19日13:01:28
+ **/
+
+import com.ard.alarm.digitization.model.DataBridge;
+import lombok.extern.slf4j.Slf4j;
+
+import java.sql.Connection;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.sql.Statement;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+@Slf4j(topic = "digitization3")
+public class Query {
+ static Connection conn = null;
+ static Statement st = null;
+ static ResultSet rs = null;
+
+ public static List<DataBridge> getAlarmData(Date alarmTime, Integer rowNum) {
+ List<DataBridge> dataBridgeList = new ArrayList<>();
+ try {
+ //1、获取连接对象
+ conn = Conn.getGc().getCon();
+ //2、创建statement类对象,用来执行SQL语句
+ st = conn.createStatement();
+ //3、创建sql查询语句
+ StringBuilder sbd = new StringBuilder();
+ String sql = "select * from (select * from DATABRIDGE order by DB_DATETIME desc ) where 1=1 ";
+ sbd.append(sql);
+ if (rowNum != null) {
+ sbd.append(" and rownum <" + rowNum);
+ }
+ if (alarmTime != null) {
+ SimpleDateFormat fmt = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
+ String Time = fmt.format(alarmTime);
+ sbd.append(" and DB_DATETIME > to_date('" + Time + "','yyyy/mm/dd hh24:mi:ss')");
+ }
+ //4、执行sql语句并且换回一个查询的结果集
+ rs = st.executeQuery(sbd.toString());
+ while (rs.next()) { //循环遍历结果集
+ DataBridge dataBridge = new DataBridge();
+ dataBridge.setId(rs.getString("DB_GUID"));
+ dataBridge.setXmmc(rs.getString("DB_XMMC"));
+ dataBridge.setFKey(rs.getString("DB_FKEY"));
+ dataBridge.setFName(rs.getString("DB_FNAME"));
+ dataBridge.setValue(rs.getString("DB_VALUE"));
+ dataBridge.setDateTime(rs.getTimestamp("DB_DATETIME"));
+ dataBridgeList.add(dataBridge);
+ }
+ return dataBridgeList;
+ } catch (Exception e) {
+ log.error("三厂数字化报警查询异常:" + e.getMessage());
+ return dataBridgeList;
+ } finally {
+ try {
+ conn.close();
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+}
+
diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml
index a77be36..ed3593e 100644
--- a/src/main/resources/application-dev.yml
+++ b/src/main/resources/application-dev.yml
@@ -9,90 +9,26 @@
max-file-size: 30MB
max-request-size: 30MB
datasource:
- dynamic:
- primary: postgres #设置默认的数据源或者数据源组
- strict: false #严格匹配数据源,默认false. true未匹配到指定数据源时抛异常,false使用默认数据源
- druid: # 全局druid参数,单独数据源配置为空时取全局配置
- # 连接池的配置信息
- # 初始化大小,最小,最大
- initial-size: 1
- min-idle: 2
- maxActive: 8
- # 配置获取连接等待超时的时间
- maxWait: 60000
- # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
- timeBetweenEvictionRunsMillis: 60000
- # 配置一个连接在池中最小生存的时间,单位是毫秒
- minEvictableIdleTimeMillis: 300000
- validationQuery: SELECT 1 FROM DUAL
- testWhileIdle: true
- testOnBorrow: false
- testOnReturn: false
- # 打开PSCache,并且指定每个连接上PSCache的大小
- poolPreparedStatements: true
- maxPoolPreparedStatementPerConnectionSize: 20
- # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
- filters: stat,wall,slf4j
- # 通过connectProperties属性来打开mergeSql功能;慢SQL记录
- connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
- datasource:
- master:
- url: jdbc:postgresql://192.168.2.15:5432/ry-vue
- username: postgres
- password: postgres
- driver-class-name: org.postgresql.Driver
- druid: # 配置multi-datasource1 数据源连接池参数
- # 连接池的配置信息
- # 初始化大小,最小,最大
- initial-size: 2
- min-idle: 2
- maxActive: 2
- # 配置获取连接等待超时的时间
- maxWait: 600000
- # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
- timeBetweenEvictionRunsMillis: 60000
- # 配置一个连接在池中最小生存的时间,单位是毫秒
- minEvictableIdleTimeMillis: 300000
- validationQuery: SELECT 1
- testWhileIdle: true
- testOnBorrow: false
- testOnReturn: false
- # 打开PSCache,并且指定每个连接上PSCache的大小
- poolPreparedStatements: true
- maxPoolPreparedStatementPerConnectionSize: 20
- # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
- filters: stat,wall,slf4j
- # 通过connectProperties属性来打开mergeSql功能;慢SQL记录
- connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
- oracle:
- url: jdbc:oracle:thin:@//112.98.126.2:21521/orcl
- username: c##ard_user
- password: 123456
- driver-class-name: oracle.jdbc.driver.OracleDriver
- druid: #配置mysql 默认连接池参数
- # 连接池的配置信息
- # 初始化大小,最小,最大
- initial-size: 3
- min-idle: 3
- maxActive: 8
- # 配置获取连接等待超时的时间
- maxWait: 600000
- # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
- timeBetweenEvictionRunsMillis: 60000
- # 配置一个连接在池中最小生存的时间,单位是毫秒
- minEvictableIdleTimeMillis: 300000
- validationQuery: SELECT 1 FROM DUAL
- testWhileIdle: true
- testOnBorrow: false
- testOnReturn: false
- # 打开PSCache,并且指定每个连接上PSCache的大小
- poolPreparedStatements: true
- maxPoolPreparedStatementPerConnectionSize: 20
- # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
- filters: stat,wall,slf4j
- # 通过connectProperties属性来打开mergeSql功能;慢SQL记录
- connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
-
+ druid:
+ #开启druid监控web
+ stat-view-servlet:
+ enabled: true
+ driver-class-name: org.postgresql.Driver
+ url: jdbc:postgresql://192.168.2.15:5432/ry-vue
+ username: postgres
+ password: postgres
+ #最大连接数
+ maxActive: 30
+ #最小连接数
+ minIdle: 5
+ #获取连接的最大等待时间
+ maxWait: 10000
+ #解决mysql8小时的问题
+ validation-query: SELECT 'X'
+ #空闲连接的检查时间间隔
+ timeBetweenEvictionRunsMillis: 60000
+ #空闲连接最小空闲时间
+ minEvictableIdleTimeMillis: 300000
# netty配置
netty:
udp:
@@ -112,7 +48,11 @@
enabled: true
# 盗电接口地址
stealelec:
+ enabled: false
url: http://iot.zhdk.net:8090/Warning/GetWarning?userName=cy4oil
+ # 三厂数字化地址
+ digitization3:
+ enabled: true
# minio配置
minio:
endpoint: http://192.168.2.15:9001
@@ -126,8 +66,10 @@
logging:
level:
hikSdk: info
- mqtt: debug
- netty: debug
+ mqtt: info
+ netty: info
external: info
camera: info
tube: info
+ digitization3: debug
+ stealAlarm: info
\ No newline at end of file
diff --git a/src/main/resources/application-prod.yml b/src/main/resources/application-prod.yml
index c74b5f0..0a5e94c 100644
--- a/src/main/resources/application-prod.yml
+++ b/src/main/resources/application-prod.yml
@@ -49,8 +49,13 @@
timeout: 100
keepalive: 60
enabled: true
+ # 盗电接口地址
stealelec:
+ enabled: false
url: http://iot.zhdk.net:8090/Warning/GetWarning?userName=cy4oil
+ # 三厂数字化地址
+ digitization3:
+ enabled: false
mybatis:
typeAliasesPackage: com.ard.alarm.**.domain
mapperLocations: classpath:/mapper/*.xml
@@ -60,7 +65,7 @@
logging:
level:
hikSdk: debug
- mqtt: info
+ mqtt: debug
netty: info
external: info
camera: info
diff --git a/src/main/resources/logback-spring.xml b/src/main/resources/logback-spring.xml
index 1278df6..1df85d7 100644
--- a/src/main/resources/logback-spring.xml
+++ b/src/main/resources/logback-spring.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<!--日志存放路径-->
- <property name="log.path" value="./alarmLogs"/>
+ <property name="log.path" value="./logs"/>
<!--日志输出格式-->
<property name="log.pattern" value="%d{HH:mm:ss.SSS}[%thread]%-5level%logger{20}-[%method,%line]-%msg%n"/>
<!--控制台输出-->
@@ -45,14 +45,6 @@
<encoder>
<pattern>${log.pattern}</pattern>
</encoder>
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <!--过滤的级别-->
- <level>INFO</level>
- <!--匹配时的操作:接收(记录)-->
- <onMatch>ACCEPT</onMatch>
- <!--不匹配时的操作:拒绝(不记录)-->
- <onMismatch>DENY</onMismatch>
- </filter>
</appender>
<!--通用光电报警日志输出-->
<appender name="camera" class="ch.qos.logback.core.rolling.RollingFileAppender">
@@ -67,14 +59,6 @@
<encoder>
<pattern>${log.pattern}</pattern>
</encoder>
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <!--过滤的级别-->
- <level>INFO</level>
- <!--匹配时的操作:接收(记录)-->
- <onMatch>ACCEPT</onMatch>
- <!--不匹配时的操作:拒绝(不记录)-->
- <onMismatch>DENY</onMismatch>
- </filter>
</appender>
<!--外联设备报警日志输出-->
<appender name="external" class="ch.qos.logback.core.rolling.RollingFileAppender">
@@ -89,14 +73,6 @@
<encoder>
<pattern>${log.pattern}</pattern>
</encoder>
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <!--过滤的级别-->
- <level>INFO</level>
- <!--匹配时的操作:接收(记录)-->
- <onMatch>ACCEPT</onMatch>
- <!--不匹配时的操作:拒绝(不记录)-->
- <onMismatch>DENY</onMismatch>
- </filter>
</appender>
<!--Netty日志输出-->
<appender name="netty" class="ch.qos.logback.core.rolling.RollingFileAppender">
@@ -111,16 +87,8 @@
<encoder>
<pattern>${log.pattern}</pattern>
</encoder>
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <!--过滤的级别-->
- <level>INFO</level>
- <!--匹配时的操作:接收(记录)-->
- <onMatch>ACCEPT</onMatch>
- <!--不匹配时的操作:拒绝(不记录)-->
- <onMismatch>DENY</onMismatch>
- </filter>
</appender>
- <!--Mqtt日志输出-->
+ <!--mqtt日志输出-->
<appender name="mqtt" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${log.path}/mqtt.log</file>
<!--循环政策:基于时间创建日志文件-->
@@ -133,14 +101,6 @@
<encoder>
<pattern>${log.pattern}</pattern>
</encoder>
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <!--过滤的级别-->
- <level>INFO</level>
- <!--匹配时的操作:接收(记录)-->
- <onMatch>ACCEPT</onMatch>
- <!--不匹配时的操作:拒绝(不记录)-->
- <onMismatch>DENY</onMismatch>
- </filter>
</appender>
<!--hikSdk日志输出-->
<appender name="hikSdk" class="ch.qos.logback.core.rolling.RollingFileAppender">
@@ -155,6 +115,33 @@
<pattern>${log.pattern}</pattern>
</encoder>
</appender>
+ <!--stealAlarm日志输出-->
+ <appender name="stealAlarm" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${log.path}/stealAlarm.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <!--按天回滚daily-->
+ <fileNamePattern>${log.path}/stealAlarm.%d{yyyy-MM-dd}.log</fileNamePattern>
+ <!--日志最大的历史60天-->
+ <maxHistory>60</maxHistory>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${log.pattern}</pattern>
+ </encoder>
+ </appender>
+ <!--digitization3日志输出-->
+ <appender name="digitization3" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${log.path}/digitization3.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <!--按天回滚daily-->
+ <fileNamePattern>${log.path}/digitization3.%d{yyyy-MM-dd}.log</fileNamePattern>
+ <!--日志最大的历史60天-->
+ <maxHistory>60</maxHistory>
+ </rollingPolicy>
+ <encoder>
+ <pattern>${log.pattern}</pattern>
+ </encoder>
+ </appender>
+
<root level="DEBUG">
<appender-ref ref="console"/>
</root>
@@ -162,5 +149,39 @@
<root level="INFO">
<appender-ref ref="sys-info"/>
</root>
+
+ <!--tube操作日志-->
+ <logger name="tube" level="INFO">
+ <appender-ref ref="tube"/>
+ </logger>
+ <!--camera操作日志-->
+ <logger name="camera" level="INFO">
+ <appender-ref ref="camera"/>
+ </logger>
+ <!--external操作日志-->
+ <logger name="external" level="INFO">
+ <appender-ref ref="external"/>
+ </logger>
+ <!--netty操作日志-->
+ <logger name="netty" level="INFO">
+ <appender-ref ref="netty"/>
+ </logger>
+ <!--mqtt操作日志-->
+ <logger name="mqtt" level="DEBUG">
+ <appender-ref ref="mqtt"/>
+ </logger>
+ <!--hikSdk操作日志-->
+ <logger name="hikSdk" level="INFO">
+ <appender-ref ref="hikSdk"/>
+ </logger>
+ <!--digitization3操作日志-->
+ <logger name="digitization3" level="INFO">
+ <appender-ref ref="digitization3"/>
+ </logger>
+ <!--stealAlarm操作日志-->
+ <logger name="stealAlarm" level="INFO">
+ <appender-ref ref="stealAlarm"/>
+ </logger>
+
</configuration>
--
Gitblit v1.9.3