Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
B
byit-myth-job
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
liyuan
byit-myth-job
Commits
a852c2db
Commit
a852c2db
authored
May 21, 2020
by
huangfusuper
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
折线图统计BUG修改
parent
a351a82c
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
99 additions
and
110 deletions
+99
-110
ApiNodeController.java
...h-admin/src/main/java/com/byit/api/ApiNodeController.java
+2
-2
ApiFlowServiceImpl.java
...c/main/java/com/byit/service/impl/ApiFlowServiceImpl.java
+11
-11
ApiNodeServiceImpl.java
...c/main/java/com/byit/service/impl/ApiNodeServiceImpl.java
+2
-2
logback-spring.xml
byit-myth-admin/src/main/resources/logback-spring.xml
+84
-95
No files found.
byit-myth-admin/src/main/java/com/byit/api/ApiNodeController.java
View file @
a852c2db
...
...
@@ -28,14 +28,14 @@ public class ApiNodeController {
@PostMapping
(
"runNode"
)
public
String
runNode
(
String
param
){
log
.
info
(
"----------=--runNode方法接收到参数为:{}--------------"
,
param
);
log
.
debug
(
"----------=--runNode方法接收到参数为:{}--------------"
,
param
);
String
monitorKey
=
apiNodeService
.
runNode
(
param
);
return
monitorKey
;
}
@PostMapping
(
"killNode"
)
public
String
killNode
(
Integer
logId
){
log
.
info
(
"----------=--killNode方法接收到参数为:{}--------------"
,
logId
);
log
.
debug
(
"----------=--killNode方法接收到参数为:{}--------------"
,
logId
);
apiNodeService
.
killNode
(
logId
);
return
"SUCCESS"
;
}
...
...
byit-myth-admin/src/main/java/com/byit/service/impl/ApiFlowServiceImpl.java
View file @
a852c2db
...
...
@@ -112,15 +112,15 @@ public class ApiFlowServiceImpl implements ApiFlowService {
PluginPackage
pluginPackage
=
JSON
.
parseObject
(
param
,
PluginPackage
.
class
);
//校验参数
log
.
info
(
"校验参数是否符合规范"
);
log
.
debug
(
"校验参数是否符合规范"
);
Workspace
workspace
=
validate
(
pluginPackage
);
//保存工作流
log
.
info
(
"保存工作流和节点信息"
);
log
.
debug
(
"保存工作流和节点信息"
);
Flow
flow
=
saveFlow
(
pluginPackage
.
getFlow
(),
workspace
.
getWorkspaceId
(),
false
);
//生成工作流版本
log
.
info
(
"生成版本"
);
log
.
debug
(
"生成版本"
);
FlowVersion
flowVersion
=
saveFlowVersion
(
flow
);
log
.
info
(
"插件端通过API保存成功!"
);
log
.
debug
(
"插件端通过API保存成功!"
);
}
/**
...
...
@@ -185,7 +185,7 @@ public class ApiFlowServiceImpl implements ApiFlowService {
private
void
updateNodeByFlow
(
List
<
PluginBaseNode
>
pluginNodeList
,
Flow
flow
)
throws
Exception
{
//将工作流下的所有节点设为不在工作流调度上
log
.
info
(
"将工作流【{}】所有的节点移下调度,并删除相关的依赖关系"
,
flow
.
getFlowName
());
log
.
debug
(
"将工作流【{}】所有的节点移下调度,并删除相关的依赖关系"
,
flow
.
getFlowName
());
//查询当前工作流下所有在调度上的节点
List
<
Node
>
nodeList
=
nodeMapper
.
findOnforkByFlowId
(
flow
.
getFlowId
());
//删除在调度上的节点的相关依赖
...
...
@@ -1328,7 +1328,7 @@ public class ApiFlowServiceImpl implements ApiFlowService {
parseParam
(
param
,
deleteDto
);
String
workspaceName
=
deleteDto
.
getWorkspaceName
();
String
flowName
=
deleteDto
.
getFlowName
();
log
.
info
(
"删除工作空间【{}】---工作流【{}】调度"
,
workspaceName
,
flowName
);
log
.
debug
(
"删除工作空间【{}】---工作流【{}】调度"
,
workspaceName
,
flowName
);
Workspace
workspace
=
workspaceMapper
.
getByName
(
workspaceName
);
ValidationUtil
.
dataNotNull
(
workspace
,
workspaceName
+
"工作空间不存在"
);
Flow
flow
=
flowMapper
.
getByWorkSpaceAndName
(
workspace
.
getWorkspaceId
(),
flowName
);
...
...
@@ -1381,7 +1381,7 @@ public class ApiFlowServiceImpl implements ApiFlowService {
parseParam
(
param
,
deleteDto
);
String
workspaceName
=
deleteDto
.
getWorkspaceName
();
String
flowName
=
deleteDto
.
getFlowName
();
log
.
info
(
"开始工作空间【{}】---工作流【{}】调度"
,
workspaceName
,
flowName
);
log
.
debug
(
"开始工作空间【{}】---工作流【{}】调度"
,
workspaceName
,
flowName
);
Workspace
workspace
=
workspaceMapper
.
getByName
(
workspaceName
);
ValidationUtil
.
dataNotNull
(
workspace
,
workspaceName
+
"工作空间不存在"
);
Flow
flow
=
flowMapper
.
getByWorkSpaceAndName
(
workspace
.
getWorkspaceId
(),
flowName
);
...
...
@@ -1389,7 +1389,7 @@ public class ApiFlowServiceImpl implements ApiFlowService {
ValidationUtil
.
isTrueValidation
(
FlowPropertyEnum
.
IS_INNER
.
getCode
().
equals
(
flow
.
getIsInner
()),
"内嵌工作流不允许开启调度!"
);
//撤销工作流调度
updateFlowStart
(
flow
,
true
);
log
.
info
(
"工作流【{}】调度开始成功!"
,
flowName
);
log
.
debug
(
"工作流【{}】调度开始成功!"
,
flowName
);
}
@Override
...
...
@@ -1399,7 +1399,7 @@ public class ApiFlowServiceImpl implements ApiFlowService {
parseParam
(
param
,
deleteDto
);
String
workspaceName
=
deleteDto
.
getWorkspaceName
();
String
flowName
=
deleteDto
.
getFlowName
();
log
.
info
(
"撤销工作空间【{}】---工作流【{}】调度"
,
workspaceName
,
flowName
);
log
.
debug
(
"撤销工作空间【{}】---工作流【{}】调度"
,
workspaceName
,
flowName
);
Workspace
workspace
=
workspaceMapper
.
getByName
(
workspaceName
);
ValidationUtil
.
dataNotNull
(
workspace
,
workspaceName
+
"工作空间不存在"
);
Flow
flow
=
flowMapper
.
getByWorkSpaceAndName
(
workspace
.
getWorkspaceId
(),
flowName
);
...
...
@@ -1418,7 +1418,7 @@ public class ApiFlowServiceImpl implements ApiFlowService {
//撤销工作流调度
updateFlowStart
(
flow
,
false
);
log
.
info
(
"工作流【{}】调度撤销成功!"
,
flowName
);
log
.
debug
(
"工作流【{}】调度撤销成功!"
,
flowName
);
}
/**
...
...
@@ -1458,7 +1458,7 @@ public class ApiFlowServiceImpl implements ApiFlowService {
parseParam
(
param
,
deleteDto
);
String
workspaceName
=
deleteDto
.
getWorkspaceName
();
String
flowName
=
deleteDto
.
getFlowName
();
log
.
info
(
"停止工作空间【{}】---工作流【{}】调度"
,
workspaceName
,
flowName
);
log
.
debug
(
"停止工作空间【{}】---工作流【{}】调度"
,
workspaceName
,
flowName
);
Workspace
workspace
=
workspaceMapper
.
getByName
(
workspaceName
);
ValidationUtil
.
dataNotNull
(
workspace
,
workspaceName
+
"工作空间不存在"
);
Flow
flow
=
flowMapper
.
getByWorkSpaceAndName
(
workspace
.
getWorkspaceId
(),
flowName
);
...
...
byit-myth-admin/src/main/java/com/byit/service/impl/ApiNodeServiceImpl.java
View file @
a852c2db
...
...
@@ -134,7 +134,7 @@ public class ApiNodeServiceImpl implements ApiNodeService {
ValidationUtil
.
dataNotBank
(
jobTaskRunLog
.
getJobGroupIp
(),
"尚未分配执行机请稍后再试"
);
}
killJob
(
jobTaskRunLog
.
getLogId
(),
jobTaskRunLog
.
getJobGroupIp
());
log
.
info
(
"杀死成功!"
);
log
.
debug
(
"杀死成功!"
);
}
private
synchronized
Boolean
killJob
(
Integer
logId
,
String
exectUrl
){
...
...
@@ -143,7 +143,7 @@ public class ApiNodeServiceImpl implements ApiNodeService {
Map
<
String
,
Object
>
requestMap
=
new
HashMap
<>(
2
);
requestMap
.
put
(
"logId"
,
logId
);
String
killResult
=
HttpUtil
.
post
(
killUrl
,
requestMap
);
log
.
info
(
"请求结果{}"
,
killResult
);
log
.
debug
(
"请求结果{}"
,
killResult
);
ResponseResult
responseResult
=
JSON
.
parseObject
(
killResult
,
ResponseResult
.
class
);
ValidationUtil
.
isTrueValidation
(!
"SUCCESS"
.
equals
(
responseResult
.
getResult
()),
"杀死job失败,错误信息为:"
+
responseResult
.
getResult
());
...
...
byit-myth-admin/src/main/resources/logback-spring.xml
View file @
a852c2db
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<included>
<!--
规则:
%m
输出代码中指定的消息
%p
输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL
%r
输出自应用启动到输出该log信息耗费的毫秒数
%c
输出所属的类目,通常就是所在类的全名
%t
输出产生该日志事件的线程名
%n
输出一个回车换行符,Windows平台为“\r\n”,Unix平台为“\n”
%d
输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},
输出类似:2002年10月18日 22:10:28,921
%l
输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main(TestLog4.java:10)
-->
<springProperty
scope=
"context"
name=
"log.path"
source=
"logging.path"
defaultValue=
"/tmp/logs"
/>
<springProperty
scope=
"context"
name=
"spring.application.name"
source=
"spring.application.name"
/>
<springProperty
scope=
"context"
name=
"spring.profiles.active"
source=
"spring.profiles.active"
/>
<springProperty
scope=
"context"
name=
"common-pattern"
source=
"logging.common-pattern"
defaultValue=
"%d{yyyy-MM-dd HH:mm:ss.SSS}:[%5p] [%t:%r] [%logger{50}.%M:%L] --> %msg%n"
/>
<springProperty
scope=
"context"
name=
"log.level.console"
source=
"logging.level.console"
defaultValue=
"INFO"
/>
<springProperty
scope=
"context"
name=
"log.level.dev"
source=
"logging.level.dev"
defaultValue=
"DEBUG"
/>
<appender
name=
"console"
class=
"ch.qos.logback.core.ConsoleAppender"
>
<encoder>
<pattern>
%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n
</pattern>
</encoder>
</appender>
<contextName>
${spring.application.name}-logback
</contextName>
<appender
name=
"file-debug"
class=
"ch.qos.logback.core.rolling.RollingFileAppender"
>
<rollingPolicy
class=
"ch.qos.logback.core.rolling.TimeBasedRollingPolicy"
>
<fileNamePattern>
${LOG_PATH}/${LOG_FILE}_debug.%d{yyyy-MM-dd}.log
</fileNamePattern>
</rollingPolicy>
<encoder>
<pattern>
%d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n
</pattern>
</encoder>
<filter
class=
"ch.qos.logback.classic.filter.LevelFilter"
>
<level>
DEBUG
</level>
<onMatch>
ACCEPT
</onMatch>
<onMismatch>
DENY
</onMismatch>
</filter>
</appender>
<include
resource=
"org/springframework/boot/logging/logback/defaults.xml"
/>
<jmxConfigurator/>
<appender
name=
"file-info"
class=
"ch.qos.logback.core.rolling.RollingFileAppender"
>
<rollingPolicy
class=
"ch.qos.logback.core.rolling.TimeBasedRollingPolicy"
>
<fileNamePattern>
${LOG_PATH}/${LOG_FILE}_info.%d{yyyy-MM-dd}.log
</fileNamePattern>
</rollingPolicy>
<encoder>
<pattern>
%d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n
</pattern>
</encoder>
<filter
class=
"ch.qos.logback.classic.filter.LevelFilter"
>
<level>
INFO
</level>
<onMatch>
ACCEPT
</onMatch>
<onMismatch>
DENY
</onMismatch>
<!-- 控制台实时输出,采用高亮语法,用于开发环境 -->
<appender
name=
"CONSOLE_APPENDER"
class=
"ch.qos.logback.core.ConsoleAppender"
>
<filter
class=
"ch.qos.logback.classic.filter.ThresholdFilter"
>
<level>
${log.level.console}
</level>
</filter>
</appender>
<appender
name=
"file-error"
class=
"ch.qos.logback.core.rolling.RollingFileAppender"
>
<rollingPolicy
class=
"ch.qos.logback.core.rolling.TimeBasedRollingPolicy"
>
<fileNamePattern>
${LOG_PATH}/${LOG_FILE}_error.%d{yyyy-MM-dd}.log
</fileNamePattern>
</rollingPolicy>
<encoder>
<pattern>
%d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n
</pattern>
<pattern>
%d{yyyy-MM-dd HH:mm:ss.SSS}:[%5p] [%t:%r] [%cyan(%logger{50}).%M:%L] --> %highlight(%msg) %n
</pattern>
</encoder>
<filter
class=
"ch.qos.logback.classic.filter.LevelFilter"
>
<level>
ERROR
</level>
<onMatch>
ACCEPT
</onMatch>
<onMismatch>
DENY
</onMismatch>
</filter>
</appender>
<!-- 控制台异步实时输出 -->
<appender
name=
"ASYNC_CONSOLE_APPENDER"
class=
"ch.qos.logback.classic.AsyncAppender"
>
<!-- 不丢失日志.默认的,如果队列的80%已满,则会丢弃TRACT、DEBUG、INFO级别的日志 -->
<discardingThreshold>
0
</discardingThreshold>
<!-- 更改默认的队列的深度,该值会影响性能.默认值为256 -->
<queueSize>
256
</queueSize>
<!-- 添加附加的appender,最多只能添加一个 -->
<appender-ref
ref=
"CONSOLE_APPENDER"
/>
</appender>
<appender
name=
"file-myth-job"
class=
"ch.qos.logback.core.rolling.RollingFileAppender"
>
<rollingPolicy
class=
"ch.qos.logback.core.rolling.TimeBasedRollingPolicy"
>
<fileNamePattern>
${LOG_PATH}/${LOG_FILE}_myth_job.%d{yyyy-MM-dd}.log
</fileNamePattern>
<!-- 整个项目com.byit包下的的所有日志, 不包括第三方包 -->
<appender
name=
"PROJECT_APPENDER"
class=
"ch.qos.logback.core.rolling.RollingFileAppender"
>
<file>
${log.path}/${spring.application.name}/project.log
</file>
<rollingPolicy
class=
"ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"
>
<!-- 每天一归档 -->
<fileNamePattern>
${log.path}/${spring.application.name}/%d{yyyy-MM}/project-%d{yyyy-MM-dd}-%i.log.gz
</fileNamePattern>
<!-- 单个日志文件最多 100MB, 60天的日志周期,最大不能超过20GB -->
<maxFileSize>
128MB
</maxFileSize>
<maxHistory>
60
</maxHistory>
<totalSizeCap>
20GB
</totalSizeCap>
</rollingPolicy>
<encoder>
<pattern>
%d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n
</pattern>
<pattern>
${common-pattern}
</pattern>
</encoder>
</appender>
<appender
name=
"ASYNC_PROJECT_APPENDER"
class=
"ch.qos.logback.classic.AsyncAppender"
>
<discardingThreshold>
0
</discardingThreshold>
<queueSize>
256
</queueSize>
<appender-ref
ref=
"PROJECT_APPENDER"
/>
</appender>
<
logger
name=
"com.byit.thread.helper"
level=
"info"
additivity=
"false"
>
<appender-ref
ref=
"console"
/
>
<
/logger
>
<logger
name=
"com.byit.selector"
level=
"info"
additivity=
"false
"
>
<appender-ref
ref=
"console
"
/>
</logger
>
<logger
name=
"com.byit.task"
level=
"info"
additivity=
"false
"
>
<appender-ref
ref=
"console
"
/>
</logger>
<
!-- 只输出功能内com。byit的日志--
>
<!-- <springProfile name="test,docker,prod">--
>
<
springProfile
name=
"prod"
>
<root
level=
"${log.level.console}
"
>
<appender-ref
ref=
"ASYNC_CONSOLE_APPENDER
"
/>
</root
>
<logger
name=
"com.byit"
additivity=
"true"
level=
"${log.level.console}
"
>
<appender-ref
ref=
"ASYNC_PROJECT_APPENDER
"
/>
</logger>
</springProfile>
<logger
name=
"org.springframework.web"
level=
"debug"
>
<appender-ref
ref=
"console"
/>
<appender-ref
ref=
"file-debug"
/>
</logger>
<logger
name=
"com.ibatis"
level=
"debug"
>
<appender-ref
ref=
"console"
/>
<appender-ref
ref=
"file-debug"
/>
</logger>
<logger
name=
"com.ibatis.common.jdbc.SimpleDataSource"
level=
"debug"
>
<appender-ref
ref=
"console"
/>
<appender-ref
ref=
"file-debug"
/>
</logger>
<logger
name=
"com.ibatis.common.jdbc.ScriptRunner"
level=
"debug"
>
<appender-ref
ref=
"console"
/>
<appender-ref
ref=
"file-debug"
/>
</logger>
<logger
name=
"com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate"
level=
"debug"
>
<appender-ref
ref=
"console"
/>
<appender-ref
ref=
"file-debug"
/>
</logger>
<logger
name=
"java.sql.Connection"
level=
"debug"
>
<appender-ref
ref=
"console"
/>
<appender-ref
ref=
"file-debug"
/>
</logger>
<logger
name=
"java.sql.Statement"
level=
"debug"
>
<appender-ref
ref=
"console"
/>
<appender-ref
ref=
"file-debug"
/>
</logger>
<logger
name=
"java.sql.PreparedStatement"
level=
"debug"
>
<appender-ref
ref=
"console"
/>
<appender-ref
ref=
"file-debug"
/>
</logger>
<springProfile
name=
"dev,test"
>
<root
level=
"${log.level.dev}"
>
<appender-ref
ref=
"CONSOLE_APPENDER"
/>
</root>
<logger
name=
"com.byit"
additivity=
"true"
level=
"${log.level.dev}"
>
<appender-ref
ref=
"PROJECT_APPENDER"
/>
</logger>
<root
level=
"info"
>
<appender-ref
ref=
"console"
/>
<appender-ref
ref=
"file-debug"
/>
<appender-ref
ref=
"file-info"
/>
<appender-ref
ref=
"file-error"
/>
</root>
</springProfile>
</configuration>
\ No newline at end of file
</included>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment