Browse Source

按照测试要求的打包格式编写配置文件

lixing 4 years ago
parent
commit
e8a0436fd0

+ 114 - 0
pom.xml

@@ -145,6 +145,7 @@
    </dependencies>
 
    <build>
+       <finalName>alarm-engine</finalName>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
@@ -161,6 +162,119 @@
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
+           <!-- 按照测试要求打成zip需要的配置 -->
+           <!--获取git信息-->
+           <plugin>
+               <groupId>pl.project13.maven</groupId>
+               <artifactId>git-commit-id-plugin</artifactId>
+               <executions>
+                   <execution>
+                       <goals>
+                           <goal>revision</goal>
+                       </goals>
+                   </execution>
+               </executions>
+               <configuration>
+                   <verbose>true</verbose>
+                   <dateFormat>yyyyMMddHHmm</dateFormat>
+                   <generateGitPropertiesFile>true</generateGitPropertiesFile>
+                   <!--<generateGitPropertiesFilename>${project.build.outputDirectory}/git.properties</generateGitPropertiesFilename>-->
+                   <generateGitPropertiesFilename>target/git.properties</generateGitPropertiesFilename>
+               </configuration>
+           </plugin>
+           <plugin>
+               <groupId>com.coderplus.maven.plugins</groupId>
+               <artifactId>copy-rename-maven-plugin</artifactId>
+               <version>1.0.1</version>
+               <executions>
+                   <execution>
+                       <id>rename-file</id>
+                       <phase>compile</phase>
+                       <goals>
+                           <goal>rename</goal>
+                       </goals>
+                       <configuration>
+                           <sourceFile>${project.build.directory}/git.properties</sourceFile>
+                           <destinationFile>${project.build.directory}/version.txt</destinationFile>
+                       </configuration>
+                   </execution>
+               </executions>
+           </plugin>
+           <!--拷贝资源文件 copy-resources-->
+           <plugin>
+               <artifactId>maven-resources-plugin</artifactId>
+               <executions>
+                   <execution>
+                       <id>copy-resources</id>
+                       <phase>package</phase>
+                       <goals>
+                           <goal>copy-resources</goal>
+                       </goals>
+                       <configuration>
+                           <resources>
+                               <resource>
+                                   <directory>src/main/resources/</directory>
+                                   <includes>
+                                       <include>**/*.yml</include>
+                                   </includes>
+                               </resource>
+                               <resource>
+                                   <directory>${project.build.directory}</directory>
+                                   <includes>
+                                       <include>**/version.txt</include>
+                                   </includes>
+                               </resource>
+                           </resources>
+                           <outputDirectory>${project.build.directory}/config</outputDirectory>
+                       </configuration>
+                   </execution>
+                   <!--拷贝启动脚本-->
+                   <execution>
+                       <id>copy-version</id>
+                       <phase>package</phase>
+                       <goals>
+                           <goal>copy-resources</goal>
+                       </goals>
+                       <configuration>
+                           <resources>
+                               <resource>
+                                   <directory>src/script</directory>
+                               </resource>
+                           </resources>
+                           <outputDirectory>${project.build.directory}</outputDirectory>
+                       </configuration>
+                   </execution>
+               </executions>
+           </plugin>
+
+           <!-- 打包压缩 -->
+           <plugin>
+               <groupId>org.apache.maven.plugins</groupId>
+               <artifactId>maven-assembly-plugin</artifactId>
+               <executions>
+                   <execution>
+                       <id>make-assembly</id>
+                       <!-- 当执行mvn package时才会打包 -->
+                       <phase>package</phase>
+                       <goals>
+                           <goal>single</goal>
+                       </goals>
+                       <configuration>
+                           <finalName>
+                               ${project.artifactId}_${git.commit.time}_git_${git.branch}_${git.commit.id.abbrev}
+                           </finalName>
+                           <!--不包含assembly id-->
+                           <appendAssemblyId>false</appendAssemblyId>
+                           <!--输出路径-->
+                           <!--<outputDirectory>../target/co_search-${project.version}</outputDirectory>-->
+                           <descriptors>
+                               <descriptor>src/script/zip.xml</descriptor>
+                           </descriptors>
+                       </configuration>
+                   </execution>
+               </executions>
+           </plugin>
+
        </plugins>
    </build>
 

+ 2 - 1
src/main/java/com/persagy/service/impl/AlarmHandleServiceImpl.java

@@ -205,6 +205,7 @@ public class AlarmHandleServiceImpl implements AlarmHandleService {
                 int uphold = condition.getEndUphold();
                 //超过报警恢复设置的持续时间
                 if (DateUtils.betweenTwoTimeSecond(endTime, dateTime) >= uphold) {
+                    log.info("defineId: [{}]", defineId);
                     log.error("产生一条报警恢复消息[{}]>[{}]", DateUtils.betweenTwoTimeSecond(endTime, dateTime), uphold);
                     NettyMessage<AlarmRecord> nettyMessage = new NettyMessage<>(6, alarmDefine.getProjectId());
                     ZktAlarmRecordDO alarmRecordDO = alarmRecordRepository.findById(AlarmInfoCache.getAlarmDefineId(alarmDefine)).orElse(new ZktAlarmRecordDO());
@@ -357,7 +358,7 @@ public class AlarmHandleServiceImpl implements AlarmHandleService {
                     //有过期时间,生成报警过期消息
                     if (expireDateTime != null) {
                         //过期时间
-                        log.info("产生一条定时过期报警消息");
+                        log.info("产生一条定时过期报警消息, 过期时间为:{}", expireDateTime);
                         // 创建一条过期任务
                         createExpireJob(alarmDefine, alarmDefineState, expireDateTime);
                     }

+ 4 - 0
src/script/start.bat

@@ -0,0 +1,4 @@
+@ECHO OFF&PUSHD %~DP0 &TITLE alarm-engine
+@ECHO 根据情况使用内存限制 命令为:
+@ECHO java -jar -Xms500m -Xmx1024m -Dfile.encoding=utf-8 alarm-engine.jar
+java -jar -Xms500m -Xmx1024m -Dfile.encoding=utf-8 -DCONFIG_FILE_PATH=D:\SpringCloud alarm-engine.jar

+ 6 - 0
src/script/start.sh

@@ -0,0 +1,6 @@
+#!/bin/sh
+# 根据情况使用内存限制 命令为:
+# nohup java -jar -Xms500m -Xmx1024m -Dfile.encoding=utf-8 alarm-engine.jar >/dev/null 2>&1 &
+nohup java -jar -Xms500m -Xmx4096m -Dfile.encoding=utf-8 -DCONFIG_FILE_PATH=/mnt/data/SpringCloud alarm-engine.jar >/dev/null 2>&1 &
+sleep 2
+tail -f ../logs/alarm-engine/log.log

+ 23 - 0
src/script/zip.xml

@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<assembly
+        xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/3.1.1"
+        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/3.1.1 http://maven.apache.org/xsd/assembly-3.1.1.xsd">
+    <id>dev</id>
+    <formats>
+        <format>zip</format>
+    </formats>
+    <includeBaseDirectory>false</includeBaseDirectory>
+    <fileSets>
+        <fileSet>
+            <directory>${basedir}/target/</directory>
+            <includes>
+                <include>config/</include>
+                <include>*.jar</include>
+                <include>start.bat</include>
+                <include>start.sh</include>
+            </includes>
+            <outputDirectory>/</outputDirectory>
+        </fileSet>
+    </fileSets>
+</assembly>