Ver Fonte

模板配置完善

wukai há 9 meses atrás
pai
commit
a54f46a13c

+ 2 - 2
jjt-admin/src/main/resources/application-tt.yml

@@ -16,7 +16,7 @@ jjt:
 # 开发环境配置
 server:
   # 服务器的HTTP端口,默认为8080
-  port: 18081
+  port: 9527
   servlet:
     # 应用的访问路径
     context-path: /
@@ -54,7 +54,7 @@ spring:
     druid:
       # 主库数据源
       master:
-        url: jdbc:mysql://192.168.188.66:3306/jy2024?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&rewriteBatchedStatements=true
+        url: jdbc:mysql://192.168.188.66:3306/jy2024-test?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&rewriteBatchedStatements=true
         username: root
         password: 123456
       # 从库数据源

+ 2 - 1
jjt-biz/src/main/java/com/jjt/biz/controller/MetricsTplDetailController.java

@@ -124,7 +124,8 @@ public class MetricsTplDetailController extends BaseController {
             metricsTplDetail.setEvent(metricsTplDetail.getEvent().trim());
         }
         int i = metricsTplDetailService.updateMetricsTplDetail(metricsTplDetail);
-        String sql = "select count(*) num from metrics_tpl_detail where tpl_id=? and (data_exp is null or DATA_EXP ='')";
+        String sql = "select count(*) num from metrics_tpl_detail a,metrics_def b" +
+                " WHERE a.metrics_id=b.metrics_id and a.tpl_id=? and b.metrics_type='2' and (a.data_exp is null or a.DATA_EXP ='')";
         Integer num = jdbcTemplate.queryForObject(sql, Integer.class, metricsTplDetail.getTplId());
         MetricsTpl tpl = new MetricsTpl();
         tpl.setTplId(metricsTplDetail.getTplId());

+ 30 - 14
jjt-biz/src/main/java/com/jjt/biz/service/impl/BizObjMetricsServiceImpl.java

@@ -11,6 +11,7 @@ import com.jjt.biz.service.*;
 import com.jjt.common.exception.ServiceException;
 import com.jjt.common.utils.DateUtils;
 import com.jjt.common.utils.StringUtils;
+import com.jjt.common.utils.bean.BeanUtils;
 import com.jjt.hl.domain.HlEvent;
 import com.jjt.hl.mapper.HlEventMapper;
 import com.jjt.hl.service.IHlEventService;
@@ -201,7 +202,7 @@ public class BizObjMetricsServiceImpl implements IBizObjMetricsService {
         List<MetricsTplDetail> list = detailService.selectMetricsTplDetailList(query);
         List<BizObjMetrics> objMetrics = new ArrayList<>();
         list.forEach(d -> {
-            if ("1".equals(d.getMetricsDef().getMetricsType()) && !d.getMetricsDef().getMetricsCode().startsWith("pp.jvm.")) {
+             if ("1".equals(d.getMetricsDef().getMetricsType()) && !d.getMetricsDef().getMetricsCode().startsWith("pp.jvm.")) {
                 //如果是pinpoint,并且不是jvm参数
                 // 1.获取对象pinpoint组成
                 List<BizObjPp> pps = ppService.selectBizObjPpListByObjId(objId);
@@ -212,8 +213,8 @@ public class BizObjMetricsServiceImpl implements IBizObjMetricsService {
                     ms.setTplId(tplId);
                     ms.setMetricsId(d.getMetricsId());
                     ms.setMetricsName(pp.getPpType() + "/" + d.getMetricsDef().getMetricsName());
-                    ms.setMetricsCode(d.getMetricsCode());
-                    ms.setDataExp(ms.getMetricsCode());
+                    ms.setMetricsCode(d.getMetricsDef().getMetricsCode());
+                    ms.setDataExp(d.getMetricsDef().getMetricsCode());
                     ms.setAlarmLow(d.getAlarmLow());
                     ms.setAlarmMid(d.getAlarmMid());
                     ms.setAlarmHigh(d.getAlarmHigh());
@@ -260,9 +261,12 @@ public class BizObjMetricsServiceImpl implements IBizObjMetricsService {
                             String v = metric.getJSONObject(i).getByPath("metric." + d.getFindKey(), String.class);
                             String name = d.getMetricsDef().getMetricsName() + "{" + d.getFindKey() + "=" + v + "}";
                             String dataExp = ms.getDataExp().replace("${key}", v);
-                            ms.setDataExp(dataExp);
-                            ms.setMetricsName(name);
-                            objMetrics.add(ms);
+                            BizObjMetrics newMs = new BizObjMetrics();
+                            BeanUtils.copyProperties(ms, newMs);
+                            newMs.setObjMetricsId(null);
+                            newMs.setDataExp(dataExp);
+                            newMs.setMetricsName(name);
+                            objMetrics.add(newMs);
                         }
                     } else {
                         objMetrics.add(ms);
@@ -336,8 +340,7 @@ public class BizObjMetricsServiceImpl implements IBizObjMetricsService {
 
         if ("1".equals(bizObj.getObjType())) {
             // 获取应用程序的code
-            BizObjApp app = appService.selectBizObjAppByAppId(bizObj.getAppId());
-            String appName = app.getAppCode();
+            String appName = bizObj.getObjAddr();
 
             Long time = Long.parseLong(configService.selectConfigByKey("pp.api.time"));
             LocalDateTime endTime = LocalDateTime.now();
@@ -571,6 +574,11 @@ public class BizObjMetricsServiceImpl implements IBizObjMetricsService {
             ms.setObjId(objId);
             ms.setTplId(-1L);
             ms.setMetricsId(d.getMetricsId());
+
+            List<BizObjMetrics> queryList = bizObjMetricsMapper.selectBizObjMetricsList(ms);
+            if (queryList.size() > 0) {
+                continue;
+            }
             ms.setMetricsName(d.getMetricsName());
             ms.setMetricsCode(d.getMetricsCode());
             ms.setAlarmLow(d.getAlarmLow());
@@ -590,9 +598,12 @@ public class BizObjMetricsServiceImpl implements IBizObjMetricsService {
                     String v = metric.getJSONObject(i).getByPath("metric." + d.getFindKey(), String.class);
                     String name = d.getMetricsName() + "{" + d.getFindKey() + "=" + v + "}";
                     String dataExp = ms.getDataExp().replace("${key}", v);
-                    ms.setDataExp(dataExp);
-                    ms.setMetricsName(name);
-                    objMetrics.add(ms);
+                    BizObjMetrics newMs = new BizObjMetrics();
+                    BeanUtils.copyProperties(ms, newMs);
+                    newMs.setObjMetricsId(null);
+                    newMs.setDataExp(dataExp);
+                    newMs.setMetricsName(name);
+                    objMetrics.add(newMs);
                 }
             } else {
                 objMetrics.add(ms);
@@ -689,8 +700,9 @@ public class BizObjMetricsServiceImpl implements IBizObjMetricsService {
                 objMetrics.add(ms);
             }
         });
-
-        bizObjMetricsMapper.batchInsert(objMetrics);
+        if (objMetrics.size() > 0) {
+            bizObjMetricsMapper.batchInsert(objMetrics);
+        }
     }
 
     /**
@@ -846,7 +858,11 @@ public class BizObjMetricsServiceImpl implements IBizObjMetricsService {
                         updateMetric(om, "pp.avg", vo.getAvg(), date);
                         updateMetric(om, "pp.slow", vo.getSlow(), date);
                         updateMetric(om, "pp.error", vo.getError(), date);
-                        BigDecimal rate = BigDecimal.valueOf(vo.getTime1s()).divide(BigDecimal.valueOf(vo.getTot()), 2, RoundingMode.HALF_UP);
+                        Integer time1 = vo.getTime1s();
+                        if (time1 == null) {
+                            time1 = vo.getTime100ms();
+                        }
+                        BigDecimal rate = BigDecimal.valueOf(time1).divide(BigDecimal.valueOf(vo.getTot()), 2, RoundingMode.HALF_UP);
                         updateMetric(om, "pp.rate", rate, date);
                     }
                 }

+ 1 - 1
jjt-biz/src/main/resources/mapper/biz/BizObjMcMapper.xml

@@ -54,7 +54,7 @@
                      b.METRICS_ID   as METRICS_ID_b,
                      b.METRICS_CODE as METRICS_CODE_b,
                      b.METRICS_NAME as METRICS_NAME_b,
-                     b.METRICS_TYPE,
+                     b.METRICS_TYPE
               from biz_obj_mc a,
                    metrics_def b
               where a.METRICS_ID = b.METRICS_ID) t