mirror of
https://github.com/continew-org/continew-admin.git
synced 2025-09-09 20:57:21 +08:00
refactor: 优化项目模块命名(简化、分类、统一)
This commit is contained in:
@@ -0,0 +1,75 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>top.continew</groupId>
|
||||
<artifactId>continew-extension</artifactId>
|
||||
<version>${revision}</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>continew-extension-schedule-server</artifactId>
|
||||
<description>任务调度服务端</description>
|
||||
|
||||
<properties>
|
||||
<!-- SnailJob 服务端 -->
|
||||
<snail-job.version>1.1.2</snail-job.version>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<!-- SnailJob(灵活,可靠和快速的分布式任务重试和分布式任务调度平台) -->
|
||||
<dependency>
|
||||
<groupId>com.aizuda</groupId>
|
||||
<artifactId>snail-job-server-starter</artifactId>
|
||||
<version>${snail-job.version}</version>
|
||||
</dependency>
|
||||
|
||||
<!-- MyBatis Plus(MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,简化开发、提高效率) -->
|
||||
<dependency>
|
||||
<groupId>com.baomidou</groupId>
|
||||
<artifactId>mybatis-plus-spring-boot3-starter</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- Dynamic Datasource(基于 Spring Boot 的快速集成多数据源的启动器) -->
|
||||
<dependency>
|
||||
<groupId>com.baomidou</groupId>
|
||||
<artifactId>dynamic-datasource-spring-boot3-starter</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- Liquibase(用于管理数据库版本,跟踪、管理和应用数据库变化) -->
|
||||
<dependency>
|
||||
<groupId>org.liquibase</groupId>
|
||||
<artifactId>liquibase-core</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-web</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-test</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<!-- 设置构建的 jar 包名 -->
|
||||
<finalName>${project.artifactId}</finalName>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-maven-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<goals>
|
||||
<goal>repackage</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
@@ -0,0 +1,34 @@
|
||||
/*
|
||||
* Copyright (c) 2022-present Charles7c Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package top.continew.admin.extension.scheduling;
|
||||
|
||||
import org.springframework.boot.SpringApplication;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
|
||||
/**
|
||||
* 任务调度服务端启动程序
|
||||
*
|
||||
* @author KAI
|
||||
* @since 2024/6/25 22:24
|
||||
*/
|
||||
@SpringBootApplication
|
||||
public class ScheduleServerApplication {
|
||||
|
||||
public static void main(String[] args) {
|
||||
SpringApplication.run(com.aizuda.snailjob.server.SnailJobServerApplication.class, args);
|
||||
}
|
||||
}
|
@@ -0,0 +1,69 @@
|
||||
server:
|
||||
port: 8001
|
||||
|
||||
--- ### 数据源配置
|
||||
spring.datasource:
|
||||
type: com.zaxxer.hikari.HikariDataSource
|
||||
## 动态数据源配置(可配多主多从:m1、s1...;纯粹多库:mysql、oracle...;混合配置:m1、s1、oracle...)
|
||||
dynamic:
|
||||
# 设置默认的数据源或者数据源组(默认:master)
|
||||
primary: master
|
||||
# 严格匹配数据源(true:未匹配到指定数据源时抛异常;false:使用默认数据源;默认 false)
|
||||
strict: false
|
||||
datasource:
|
||||
# 主库配置(可配多个,构成多主)
|
||||
master:
|
||||
url: jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:3306}/${DB_NAME:continew_admin_job}?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&useSSL=false&allowMultiQueries=true&rewriteBatchedStatements=true&autoReconnect=true&maxReconnects=10&failOverReadOnly=false&allowPublicKeyRetrieval=true
|
||||
username: ${DB_USER:root}
|
||||
password: ${DB_PWD:123456}
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
type: ${spring.datasource.type}
|
||||
hikari:
|
||||
# 最大连接数量(默认 10,根据实际环境调整)
|
||||
# 注意:当连接达到上限,并且没有空闲连接可用时,获取连接将在超时前阻塞最多 connectionTimeout 毫秒
|
||||
max-pool-size: 20
|
||||
# 获取连接超时时间(默认 30000 毫秒,30 秒)
|
||||
connection-timeout: 30000
|
||||
# 空闲连接最大存活时间(默认 600000 毫秒,10 分钟)
|
||||
idle-timeout: 600000
|
||||
# 保持连接活动的频率,以防止它被数据库或网络基础设施超时。该值必须小于 maxLifetime(默认 0,禁用)
|
||||
keepaliveTime: 30000
|
||||
# 连接最大生存时间(默认 1800000 毫秒,30 分钟)
|
||||
max-lifetime: 1800000
|
||||
## Liquibase 配置
|
||||
spring.liquibase:
|
||||
# 是否启用
|
||||
enabled: true
|
||||
# 配置文件路径
|
||||
change-log: classpath:/db/changelog/db.changelog-master.yaml
|
||||
|
||||
--- ### Snail Job 服务端配置
|
||||
snail-job:
|
||||
# Netty 端口
|
||||
netty-port: 1788
|
||||
# 合并日志默认保存天数
|
||||
merge-Log-days: 1
|
||||
# 合并日志默认的条数
|
||||
merge-Log-num: 500
|
||||
# 配置日志保存时间(单位:天)
|
||||
log-storage: 90
|
||||
# 配置每批次拉取重试数据的大小
|
||||
retry-pull-page-size: 100
|
||||
# 配置一个客户端每秒最多接收的重试数量指令
|
||||
limiter: 10
|
||||
# 配置号段模式下的步长
|
||||
step: 100
|
||||
# bucket 的总数量
|
||||
bucket-total: 128
|
||||
# Dashboard 任务容错天数
|
||||
summary-day: 7
|
||||
# 配置负载均衡周期时间
|
||||
load-balance-cycle-time: 10
|
||||
## 回调配置
|
||||
callback:
|
||||
# 回调 uniqueId 前缀
|
||||
prefix: CB
|
||||
# 配置回调的最大执行次数
|
||||
max-count: 288
|
||||
# 配置回调触发的间隔时间
|
||||
trigger-interval: 900
|
@@ -0,0 +1,69 @@
|
||||
server:
|
||||
port: 18001
|
||||
|
||||
--- ### 数据源配置
|
||||
spring.datasource:
|
||||
type: com.zaxxer.hikari.HikariDataSource
|
||||
## 动态数据源配置(可配多主多从:m1、s1...;纯粹多库:mysql、oracle...;混合配置:m1、s1、oracle...)
|
||||
dynamic:
|
||||
# 设置默认的数据源或者数据源组(默认:master)
|
||||
primary: master
|
||||
# 严格匹配数据源(true:未匹配到指定数据源时抛异常;false:使用默认数据源;默认 false)
|
||||
strict: false
|
||||
datasource:
|
||||
# 主库配置(可配多个,构成多主)
|
||||
master:
|
||||
url: jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:3306}/${DB_NAME:continew_admin_job}?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&useSSL=false&allowMultiQueries=true&rewriteBatchedStatements=true&autoReconnect=true&maxReconnects=10&failOverReadOnly=false
|
||||
username: ${DB_USER:root}
|
||||
password: ${DB_PWD:123456}
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
type: ${spring.datasource.type}
|
||||
hikari:
|
||||
# 最大连接数量(默认 10,根据实际环境调整)
|
||||
# 注意:当连接达到上限,并且没有空闲连接可用时,获取连接将在超时前阻塞最多 connectionTimeout 毫秒
|
||||
max-pool-size: 20
|
||||
# 获取连接超时时间(默认 30000 毫秒,30 秒)
|
||||
connection-timeout: 30000
|
||||
# 空闲连接最大存活时间(默认 600000 毫秒,10 分钟)
|
||||
idle-timeout: 600000
|
||||
# 保持连接活动的频率,以防止它被数据库或网络基础设施超时。该值必须小于 maxLifetime(默认 0,禁用)
|
||||
keepaliveTime: 30000
|
||||
# 连接最大生存时间(默认 1800000 毫秒,30 分钟)
|
||||
max-lifetime: 1800000
|
||||
## Liquibase 配置
|
||||
spring.liquibase:
|
||||
# 是否启用
|
||||
enabled: true
|
||||
# 配置文件路径
|
||||
change-log: classpath:/db/changelog/db.changelog-master.yaml
|
||||
|
||||
--- ### Snail Job 服务端配置
|
||||
snail-job:
|
||||
# Netty 端口
|
||||
netty-port: 1788
|
||||
# 合并日志默认保存天数
|
||||
merge-Log-days: 1
|
||||
# 合并日志默认的条数
|
||||
merge-Log-num: 500
|
||||
# 配置日志保存时间(单位:天)
|
||||
log-storage: 90
|
||||
# 配置每批次拉取重试数据的大小
|
||||
retry-pull-page-size: 100
|
||||
# 配置一个客户端每秒最多接收的重试数量指令
|
||||
limiter: 10
|
||||
# 配置号段模式下的步长
|
||||
step: 100
|
||||
# bucket 的总数量
|
||||
bucket-total: 128
|
||||
# Dashboard 任务容错天数
|
||||
summary-day: 7
|
||||
# 配置负载均衡周期时间
|
||||
load-balance-cycle-time: 10
|
||||
## 回调配置
|
||||
callback:
|
||||
# 回调 uniqueId 前缀
|
||||
prefix: CB
|
||||
# 配置回调的最大执行次数
|
||||
max-count: 288
|
||||
# 配置回调触发的间隔时间
|
||||
trigger-interval: 900
|
@@ -0,0 +1,30 @@
|
||||
--- ### Spring 配置
|
||||
spring:
|
||||
application:
|
||||
name: continew-admin-job-server
|
||||
## 环境配置
|
||||
profiles:
|
||||
# 启用的环境
|
||||
active: dev
|
||||
|
||||
--- ### MyBatis Plus 配置
|
||||
mybatis-plus:
|
||||
# 类型别名扫描包配置
|
||||
typeAliasesPackage: com.aizuda.snailjob.template.datasource.persistence.po
|
||||
## MyBatis 配置
|
||||
configuration:
|
||||
map-underscore-to-camel-case: true
|
||||
cache-enabled: true
|
||||
## 全局配置
|
||||
global-config:
|
||||
db-config:
|
||||
where-strategy: NOT_EMPTY
|
||||
capital-mode: false
|
||||
# 逻辑删除全局值(默认 1,表示已删除)
|
||||
logic-delete-value: 1
|
||||
# 逻辑未删除全局值(默认 0,表示未删除)
|
||||
logic-not-delete-value: 0
|
||||
|
||||
--- ### 日志配置
|
||||
logging:
|
||||
config: classpath:logback-spring.xml
|
@@ -0,0 +1,5 @@
|
||||
databaseChangeLog:
|
||||
- include:
|
||||
file: db/changelog/mysql/snail-job_table.sql
|
||||
- include:
|
||||
file: db/changelog/mysql/snail-job_data.sql
|
@@ -0,0 +1,14 @@
|
||||
-- liquibase formatted sql
|
||||
|
||||
-- changeset snail-job-server:1.1.0
|
||||
-- 默认命名空间:Default
|
||||
INSERT INTO `sj_namespace` (`id`, `name`, `unique_id`, `create_dt`, `update_dt`, `deleted`)
|
||||
VALUES (1, 'Default', '764d604ec6fc45f68cd92514c40e9e1a', NOW(), NOW(), 0);
|
||||
|
||||
-- 默认分组:continew-admin
|
||||
INSERT INTO `sj_group_config` (`id`, `namespace_id`, `group_name`, `description`, `token`, `group_status`, `version`, `group_partition`, `id_generator_mode`, `init_scene`, `bucket_index`, `create_dt`, `update_dt`)
|
||||
VALUES (1, '764d604ec6fc45f68cd92514c40e9e1a', 'continew-admin', '默认分组', 'SJ_Wyz3dmsdbDOkDujOTSSoBjGQP1BMsVnj', 1, 1, 0, 2, 1, 119, NOW(), NOW());
|
||||
|
||||
-- 默认用户:admin/admin
|
||||
INSERT INTO `sj_system_user` (username, password, role)
|
||||
VALUES ('admin', '465c194afb65670f38322df087f0a9bb225cc257e43eb4ac5a0c98ef5b3173ac', 2);
|
@@ -0,0 +1,518 @@
|
||||
-- liquibase formatted sql
|
||||
|
||||
-- changeset snail-job-server:1.1.0
|
||||
SET NAMES utf8mb4;
|
||||
|
||||
CREATE TABLE `sj_namespace`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`name` varchar(64) NOT NULL COMMENT '名称',
|
||||
`unique_id` varchar(64) NOT NULL COMMENT '唯一id',
|
||||
`description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
|
||||
`deleted` tinyint(4) NOT NULL DEFAULT 0 COMMENT '逻辑删除 1、删除',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_name` (`name`),
|
||||
UNIQUE KEY `uk_unique_id` (`unique_id`)
|
||||
) ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='命名空间';
|
||||
|
||||
CREATE TABLE `sj_group_config`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`group_name` varchar(64) NOT NULL DEFAULT '' COMMENT '组名称',
|
||||
`description` varchar(256) NOT NULL DEFAULT '' COMMENT '组描述',
|
||||
`token` varchar(64) NOT NULL DEFAULT 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT' COMMENT 'token',
|
||||
`group_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '组状态 0、未启用 1、启用',
|
||||
`version` int(11) NOT NULL COMMENT '版本号',
|
||||
`group_partition` int(11) NOT NULL COMMENT '分区',
|
||||
`id_generator_mode` tinyint(4) NOT NULL DEFAULT 1 COMMENT '唯一id生成模式 默认号段模式',
|
||||
`init_scene` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否初始化场景 0:否 1:是',
|
||||
`bucket_index` int(11) NOT NULL DEFAULT 0 COMMENT 'bucket',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_namespace_id_group_name` (`namespace_id`, `group_name`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='组配置'
|
||||
;
|
||||
|
||||
CREATE TABLE `sj_notify_config`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`business_id` varchar(64) NOT NULL COMMENT '业务id (job_id或workflow_id或scene_name)',
|
||||
`system_task_type` tinyint(4) NOT NULL DEFAULT 3 COMMENT '任务类型 1. 重试任务 2. 重试回调 3、JOB任务 4、WORKFLOW任务',
|
||||
`notify_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '通知状态 0、未启用 1、启用',
|
||||
`recipient_ids` varchar(128) NOT NULL COMMENT '接收人id列表',
|
||||
`notify_threshold` int(11) NOT NULL DEFAULT 0 COMMENT '通知阈值',
|
||||
`notify_scene` tinyint(4) NOT NULL DEFAULT 0 COMMENT '通知场景',
|
||||
`rate_limiter_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '限流状态 0、未启用 1、启用',
|
||||
`rate_limiter_threshold` int(11) NOT NULL DEFAULT 0 COMMENT '每秒限流阈值',
|
||||
`description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `business_id`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='通知配置'
|
||||
;
|
||||
|
||||
CREATE TABLE `sj_notify_recipient`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`recipient_name` varchar(64) NOT NULL COMMENT '接收人名称',
|
||||
`notify_type` tinyint(4) NOT NULL DEFAULT 0 COMMENT '通知类型 1、钉钉 2、邮件 3、企业微信 4 飞书 5 webhook',
|
||||
`notify_attribute` varchar(512) NOT NULL COMMENT '配置属性',
|
||||
`description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_namespace_id` (`namespace_id`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='告警通知接收人'
|
||||
;
|
||||
|
||||
|
||||
CREATE TABLE `sj_retry_dead_letter_0`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`unique_id` varchar(64) NOT NULL COMMENT '同组下id唯一',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`scene_name` varchar(64) NOT NULL COMMENT '场景名称',
|
||||
`idempotent_id` varchar(64) NOT NULL COMMENT '幂等id',
|
||||
`biz_no` varchar(64) NOT NULL DEFAULT '' COMMENT '业务编号',
|
||||
`executor_name` varchar(512) NOT NULL DEFAULT '' COMMENT '执行器名称',
|
||||
`args_str` text NOT NULL COMMENT '执行方法参数',
|
||||
`ext_attrs` text NOT NULL COMMENT '扩展字段',
|
||||
`task_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务类型 1、重试数据 2、回调数据',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`),
|
||||
KEY `idx_idempotent_id` (`idempotent_id`),
|
||||
KEY `idx_biz_no` (`biz_no`),
|
||||
KEY `idx_create_dt` (`create_dt`),
|
||||
UNIQUE KEY `uk_namespace_id_group_name_unique_id` (`namespace_id`, `group_name`, `unique_id`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='死信队列表'
|
||||
;
|
||||
|
||||
CREATE TABLE `sj_retry_task_0`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`unique_id` varchar(64) NOT NULL COMMENT '同组下id唯一',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`scene_name` varchar(64) NOT NULL COMMENT '场景名称',
|
||||
`idempotent_id` varchar(64) NOT NULL COMMENT '幂等id',
|
||||
`biz_no` varchar(64) NOT NULL DEFAULT '' COMMENT '业务编号',
|
||||
`executor_name` varchar(512) NOT NULL DEFAULT '' COMMENT '执行器名称',
|
||||
`args_str` text NOT NULL COMMENT '执行方法参数',
|
||||
`ext_attrs` text NOT NULL COMMENT '扩展字段',
|
||||
`next_trigger_at` datetime NOT NULL COMMENT '下次触发时间',
|
||||
`retry_count` int(11) NOT NULL DEFAULT 0 COMMENT '重试次数',
|
||||
`retry_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '重试状态 0、重试中 1、成功 2、最大重试次数',
|
||||
`task_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务类型 1、重试数据 2、回调数据',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`),
|
||||
KEY `idx_namespace_id_group_name_task_type` (`namespace_id`, `group_name`, `task_type`),
|
||||
KEY `idx_namespace_id_group_name_retry_status` (`namespace_id`, `group_name`, `retry_status`),
|
||||
KEY `idx_idempotent_id` (`idempotent_id`),
|
||||
KEY `idx_biz_no` (`biz_no`),
|
||||
KEY `idx_create_dt` (`create_dt`),
|
||||
UNIQUE KEY `uk_name_unique_id` (`namespace_id`, `group_name`, `unique_id`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='任务表'
|
||||
;
|
||||
|
||||
CREATE TABLE `sj_retry_task_log`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`unique_id` varchar(64) NOT NULL COMMENT '同组下id唯一',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`scene_name` varchar(64) NOT NULL COMMENT '场景名称',
|
||||
`idempotent_id` varchar(64) NOT NULL COMMENT '幂等id',
|
||||
`biz_no` varchar(64) NOT NULL DEFAULT '' COMMENT '业务编号',
|
||||
`executor_name` varchar(512) NOT NULL DEFAULT '' COMMENT '执行器名称',
|
||||
`args_str` text NOT NULL COMMENT '执行方法参数',
|
||||
`ext_attrs` text NOT NULL COMMENT '扩展字段',
|
||||
`retry_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '重试状态 0、重试中 1、成功 2、最大次数',
|
||||
`task_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务类型 1、重试数据 2、回调数据',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`),
|
||||
KEY `idx_retry_status` (`retry_status`),
|
||||
KEY `idx_idempotent_id` (`idempotent_id`),
|
||||
KEY `idx_unique_id` (`unique_id`),
|
||||
KEY `idx_biz_no` (`biz_no`),
|
||||
KEY `idx_create_dt` (`create_dt`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='任务日志基础信息表'
|
||||
;
|
||||
|
||||
CREATE TABLE `sj_retry_task_log_message`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`unique_id` varchar(64) NOT NULL COMMENT '同组下id唯一',
|
||||
`message` longtext NOT NULL COMMENT '异常信息',
|
||||
`log_num` int(11) NOT NULL DEFAULT 1 COMMENT '日志数量',
|
||||
`real_time` bigint(13) NOT NULL DEFAULT 0 COMMENT '上报时间',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `unique_id`),
|
||||
KEY `idx_create_dt` (`create_dt`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='任务调度日志信息记录表'
|
||||
;
|
||||
|
||||
CREATE TABLE `sj_retry_scene_config`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`scene_name` varchar(64) NOT NULL COMMENT '场景名称',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`scene_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '组状态 0、未启用 1、启用',
|
||||
`max_retry_count` int(11) NOT NULL DEFAULT 5 COMMENT '最大重试次数',
|
||||
`back_off` tinyint(4) NOT NULL DEFAULT 1 COMMENT '1、默认等级 2、固定间隔时间 3、CRON 表达式',
|
||||
`trigger_interval` varchar(16) NOT NULL DEFAULT '' COMMENT '间隔时长',
|
||||
`deadline_request` bigint(20) unsigned NOT NULL DEFAULT 60000 COMMENT 'Deadline Request 调用链超时 单位毫秒',
|
||||
`executor_timeout` int(11) unsigned NOT NULL DEFAULT 5 COMMENT '任务执行超时时间,单位秒',
|
||||
`route_key` tinyint(4) NOT NULL DEFAULT 4 COMMENT '路由策略',
|
||||
`description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='场景配置'
|
||||
;
|
||||
|
||||
CREATE TABLE `sj_server_node`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`host_id` varchar(64) NOT NULL COMMENT '主机id',
|
||||
`host_ip` varchar(64) NOT NULL COMMENT '机器ip',
|
||||
`host_port` int(16) NOT NULL COMMENT '机器端口',
|
||||
`expire_at` datetime NOT NULL COMMENT '过期时间',
|
||||
`node_type` tinyint(4) NOT NULL COMMENT '节点类型 1、客户端 2、是服务端',
|
||||
`ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_namespace_id_group_name` (`namespace_id`, `group_name`),
|
||||
KEY `idx_expire_at_node_type` (`expire_at`, `node_type`),
|
||||
UNIQUE KEY `uk_host_id_host_ip` (`host_id`, `host_ip`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='服务器节点'
|
||||
;
|
||||
|
||||
CREATE TABLE `sj_distributed_lock`
|
||||
(
|
||||
`name` varchar(64) NOT NULL COMMENT '锁名称',
|
||||
`lock_until` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '锁定时长',
|
||||
`locked_at` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '锁定时间',
|
||||
`locked_by` varchar(255) NOT NULL COMMENT '锁定者',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`name`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='锁定表'
|
||||
;
|
||||
|
||||
CREATE TABLE `sj_system_user`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`username` varchar(64) NOT NULL COMMENT '账号',
|
||||
`password` varchar(128) NOT NULL COMMENT '密码',
|
||||
`role` tinyint(4) NOT NULL DEFAULT 0 COMMENT '角色:1-普通用户、2-管理员',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_username` (`username`) USING BTREE
|
||||
) ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='系统用户表';
|
||||
|
||||
CREATE TABLE `sj_system_user_permission`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`system_user_id` bigint(20) NOT NULL COMMENT '系统用户id',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_namespace_id_group_name_system_user_id` (`namespace_id`, `group_name`, `system_user_id`)
|
||||
) ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='系统用户权限表';
|
||||
|
||||
CREATE TABLE `sj_sequence_alloc`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`group_name` varchar(64) NOT NULL DEFAULT '' COMMENT '组名称',
|
||||
`max_id` bigint(20) NOT NULL DEFAULT 1 COMMENT '最大id',
|
||||
`step` int(11) NOT NULL DEFAULT 100 COMMENT '步长',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_namespace_id_group_name` (`namespace_id`, `group_name`)
|
||||
) ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='号段模式序号ID分配表';
|
||||
|
||||
-- 分布式调度DDL
|
||||
CREATE TABLE `sj_job`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`job_name` varchar(64) NOT NULL COMMENT '名称',
|
||||
`args_str` text DEFAULT NULL COMMENT '执行方法参数',
|
||||
`args_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '参数类型 ',
|
||||
`next_trigger_at` bigint(13) NOT NULL COMMENT '下次触发时间',
|
||||
`job_status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务状态 0、关闭、1、开启',
|
||||
`task_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务类型 1、集群 2、广播 3、切片',
|
||||
`route_key` tinyint(4) NOT NULL DEFAULT 4 COMMENT '路由策略',
|
||||
`executor_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '执行器类型',
|
||||
`executor_info` varchar(255) DEFAULT NULL COMMENT '执行器名称',
|
||||
`trigger_type` tinyint(4) NOT NULL COMMENT '触发类型 1.CRON 表达式 2. 固定时间',
|
||||
`trigger_interval` varchar(255) NOT NULL COMMENT '间隔时长',
|
||||
`block_strategy` tinyint(4) NOT NULL DEFAULT 1 COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行',
|
||||
`executor_timeout` int(11) NOT NULL DEFAULT 0 COMMENT '任务执行超时时间,单位秒',
|
||||
`max_retry_times` int(11) NOT NULL DEFAULT 0 COMMENT '最大重试次数',
|
||||
`parallel_num` int(11) NOT NULL DEFAULT 1 COMMENT '并行数',
|
||||
`retry_interval` int(11) NOT NULL DEFAULT 0 COMMENT '重试间隔(s)',
|
||||
`bucket_index` int(11) NOT NULL DEFAULT 0 COMMENT 'bucket',
|
||||
`resident` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否是常驻任务',
|
||||
`description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
|
||||
`ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段',
|
||||
`deleted` tinyint(4) NOT NULL DEFAULT 0 COMMENT '逻辑删除 1、删除',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_namespace_id_group_name` (`namespace_id`, `group_name`),
|
||||
KEY `idx_job_status_bucket_index` (`job_status`, `bucket_index`),
|
||||
KEY `idx_create_dt` (`create_dt`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='任务信息';
|
||||
|
||||
CREATE TABLE `sj_job_log_message`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`job_id` bigint(20) NOT NULL COMMENT '任务信息id',
|
||||
`task_batch_id` bigint(20) NOT NULL COMMENT '任务批次id',
|
||||
`task_id` bigint(20) NOT NULL COMMENT '调度任务id',
|
||||
`message` longtext NOT NULL COMMENT '调度信息',
|
||||
`log_num` int(11) NOT NULL DEFAULT 1 COMMENT '日志数量',
|
||||
`real_time` bigint(13) NOT NULL DEFAULT 0 COMMENT '上报时间',
|
||||
`ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_task_batch_id_task_id` (`task_batch_id`, `task_id`),
|
||||
KEY `idx_create_dt` (`create_dt`),
|
||||
KEY `idx_namespace_id_group_name` (`namespace_id`, `group_name`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='调度日志';
|
||||
|
||||
CREATE TABLE `sj_job_task`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`job_id` bigint(20) NOT NULL COMMENT '任务信息id',
|
||||
`task_batch_id` bigint(20) NOT NULL COMMENT '调度任务id',
|
||||
`parent_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '父执行器id',
|
||||
`task_status` tinyint NOT NULL DEFAULT 0 COMMENT '执行的状态 0、失败 1、成功',
|
||||
`retry_count` int(11) NOT NULL DEFAULT 0 COMMENT '重试次数',
|
||||
`mr_stage` tinyint DEFAULT NULL COMMENT '动态分片所处阶段 1:map 2:reduce 3:mergeReduce',
|
||||
`leaf` tinyint NOT NULL DEFAULT '1' COMMENT '叶子节点',
|
||||
`task_name` varchar(255) NOT NULL DEFAULT '' COMMENT '任务名称',
|
||||
`client_info` varchar(128) DEFAULT NULL COMMENT '客户端地址 clientId#ip:port',
|
||||
`wf_context` text DEFAULT NULL COMMENT '工作流全局上下文',
|
||||
`result_message` text NOT NULL COMMENT '执行结果',
|
||||
`args_str` text DEFAULT NULL COMMENT '执行方法参数',
|
||||
`args_type` tinyint NOT NULL DEFAULT 1 COMMENT '参数类型 ',
|
||||
`ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_task_batch_id_task_status` (`task_batch_id`, `task_status`),
|
||||
KEY `idx_create_dt` (`create_dt`),
|
||||
KEY `idx_namespace_id_group_name` (`namespace_id`, `group_name`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='任务实例';
|
||||
|
||||
CREATE TABLE `sj_job_task_batch`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`job_id` bigint(20) NOT NULL COMMENT '任务id',
|
||||
`workflow_node_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '工作流节点id',
|
||||
`parent_workflow_node_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '工作流任务父批次id',
|
||||
`workflow_task_batch_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '工作流任务批次id',
|
||||
`task_batch_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '任务批次状态 0、失败 1、成功',
|
||||
`operation_reason` tinyint(4) NOT NULL DEFAULT 0 COMMENT '操作原因',
|
||||
`execution_at` bigint(13) NOT NULL DEFAULT 0 COMMENT '任务执行时间',
|
||||
`system_task_type` tinyint(4) NOT NULL DEFAULT 3 COMMENT '任务类型 3、JOB任务 4、WORKFLOW任务',
|
||||
`parent_id` varchar(64) NOT NULL DEFAULT '' COMMENT '父节点',
|
||||
`ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段',
|
||||
`deleted` tinyint(4) NOT NULL DEFAULT 0 COMMENT '逻辑删除 1、删除',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_job_id_task_batch_status` (`job_id`, `task_batch_status`),
|
||||
KEY `idx_create_dt` (`create_dt`),
|
||||
KEY `idx_namespace_id_group_name` (`namespace_id`, `group_name`),
|
||||
KEY `idx_workflow_task_batch_id_workflow_node_id` (`workflow_task_batch_id`, `workflow_node_id`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='任务批次';
|
||||
|
||||
CREATE TABLE `sj_job_summary`
|
||||
(
|
||||
`id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`group_name` VARCHAR(64) NOT NULL DEFAULT '' COMMENT '组名称',
|
||||
`business_id` bigint NOT NULL COMMENT '业务id (job_id或workflow_id)',
|
||||
`system_task_type` tinyint(4) NOT NULL DEFAULT 3 COMMENT '任务类型 3、JOB任务 4、WORKFLOW任务',
|
||||
`trigger_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '统计时间',
|
||||
`success_num` int NOT NULL DEFAULT 0 COMMENT '执行成功-日志数量',
|
||||
`fail_num` int NOT NULL DEFAULT 0 COMMENT '执行失败-日志数量',
|
||||
`fail_reason` varchar(512) NOT NULL DEFAULT '' COMMENT '失败原因',
|
||||
`stop_num` int NOT NULL DEFAULT 0 COMMENT '执行失败-日志数量',
|
||||
`stop_reason` varchar(512) NOT NULL DEFAULT '' COMMENT '失败原因',
|
||||
`cancel_num` int NOT NULL DEFAULT 0 COMMENT '执行失败-日志数量',
|
||||
`cancel_reason` varchar(512) NOT NULL DEFAULT '' COMMENT '失败原因',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_namespace_id_group_name_business_id` (`namespace_id`, `group_name`, business_id),
|
||||
UNIQUE KEY `uk_trigger_at_system_task_type_business_id` (`trigger_at`, `system_task_type`, `business_id`) USING BTREE
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 1
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='DashBoard_Job';
|
||||
|
||||
CREATE TABLE `sj_retry_summary`
|
||||
(
|
||||
`id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`group_name` VARCHAR(64) NOT NULL DEFAULT '' COMMENT '组名称',
|
||||
`scene_name` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '场景名称',
|
||||
`trigger_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '统计时间',
|
||||
`running_num` int NOT NULL DEFAULT 0 COMMENT '重试中-日志数量',
|
||||
`finish_num` int NOT NULL DEFAULT 0 COMMENT '重试完成-日志数量',
|
||||
`max_count_num` int NOT NULL DEFAULT 0 COMMENT '重试到达最大次数-日志数量',
|
||||
`suspend_num` int NOT NULL DEFAULT 0 COMMENT '暂停重试-日志数量',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_trigger_at` (`trigger_at`),
|
||||
UNIQUE KEY `uk_scene_name_trigger_at` (`namespace_id`, `group_name`, `scene_name`, `trigger_at`) USING BTREE
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 1
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='DashBoard_Retry';
|
||||
|
||||
CREATE TABLE `sj_workflow`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`workflow_name` varchar(64) NOT NULL COMMENT '工作流名称',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`workflow_status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '工作流状态 0、关闭、1、开启',
|
||||
`trigger_type` tinyint(4) NOT NULL COMMENT '触发类型 1.CRON 表达式 2. 固定时间',
|
||||
`trigger_interval` varchar(255) NOT NULL COMMENT '间隔时长',
|
||||
`next_trigger_at` bigint(13) NOT NULL COMMENT '下次触发时间',
|
||||
`block_strategy` tinyint(4) NOT NULL DEFAULT 1 COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行',
|
||||
`executor_timeout` int(11) NOT NULL DEFAULT 0 COMMENT '任务执行超时时间,单位秒',
|
||||
`description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
|
||||
`flow_info` text DEFAULT NULL COMMENT '流程信息',
|
||||
`wf_context` text DEFAULT NULL COMMENT '上下文',
|
||||
`bucket_index` int(11) NOT NULL DEFAULT 0 COMMENT 'bucket',
|
||||
`version` int(11) NOT NULL COMMENT '版本号',
|
||||
`ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段',
|
||||
`deleted` tinyint(4) NOT NULL DEFAULT 0 COMMENT '逻辑删除 1、删除',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_create_dt` (`create_dt`),
|
||||
KEY `idx_namespace_id_group_name` (`namespace_id`, `group_name`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='工作流';
|
||||
|
||||
CREATE TABLE `sj_workflow_node`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`node_name` varchar(64) NOT NULL COMMENT '节点名称',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`job_id` bigint(20) NOT NULL COMMENT '任务信息id',
|
||||
`workflow_id` bigint(20) NOT NULL COMMENT '工作流ID',
|
||||
`node_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '1、任务节点 2、条件节点',
|
||||
`expression_type` tinyint(4) NOT NULL DEFAULT 0 COMMENT '1、SpEl、2、Aviator 3、QL',
|
||||
`fail_strategy` tinyint(4) NOT NULL DEFAULT 1 COMMENT '失败策略 1、跳过 2、阻塞',
|
||||
`workflow_node_status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '工作流节点状态 0、关闭、1、开启',
|
||||
`priority_level` int(11) NOT NULL DEFAULT 1 COMMENT '优先级',
|
||||
`node_info` text DEFAULT NULL COMMENT '节点信息 ',
|
||||
`version` int(11) NOT NULL COMMENT '版本号',
|
||||
`ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段',
|
||||
`deleted` tinyint(4) NOT NULL DEFAULT 0 COMMENT '逻辑删除 1、删除',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_create_dt` (`create_dt`),
|
||||
KEY `idx_namespace_id_group_name` (`namespace_id`, `group_name`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='工作流节点';
|
||||
|
||||
CREATE TABLE `sj_workflow_task_batch`
|
||||
(
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
|
||||
`group_name` varchar(64) NOT NULL COMMENT '组名称',
|
||||
`workflow_id` bigint(20) NOT NULL COMMENT '工作流任务id',
|
||||
`task_batch_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '任务批次状态 0、失败 1、成功',
|
||||
`operation_reason` tinyint(4) NOT NULL DEFAULT 0 COMMENT '操作原因',
|
||||
`flow_info` text DEFAULT NULL COMMENT '流程信息',
|
||||
`wf_context` text DEFAULT NULL COMMENT '全局上下文',
|
||||
`execution_at` bigint(13) NOT NULL DEFAULT 0 COMMENT '任务执行时间',
|
||||
`ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段',
|
||||
`version` int(11) NOT NULL DEFAULT 1 COMMENT '版本号',
|
||||
`deleted` tinyint(4) NOT NULL DEFAULT 0 COMMENT '逻辑删除 1、删除',
|
||||
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_job_id_task_batch_status` (`workflow_id`, `task_batch_status`),
|
||||
KEY `idx_create_dt` (`create_dt`),
|
||||
KEY `idx_namespace_id_group_name` (`namespace_id`, `group_name`)
|
||||
) ENGINE = InnoDB
|
||||
AUTO_INCREMENT = 0
|
||||
DEFAULT CHARSET = utf8mb4 COMMENT ='工作流批次';
|
@@ -0,0 +1,14 @@
|
||||
-- liquibase formatted sql
|
||||
|
||||
-- changeset snail-job-server:1.1.0
|
||||
-- 默认命名空间:Default
|
||||
INSERT INTO sj_namespace (id, name, unique_id, create_dt, update_dt, deleted)
|
||||
VALUES (1, 'Default', '764d604ec6fc45f68cd92514c40e9e1a', NOW(), NOW(), 0);
|
||||
|
||||
-- 默认分组:continew-admin
|
||||
INSERT INTO sj_group_config (id, namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, bucket_index, create_dt, update_dt)
|
||||
VALUES (1, '764d604ec6fc45f68cd92514c40e9e1a', 'continew-admin', '默认分组', 'SJ_Wyz3dmsdbDOkDujOTSSoBjGQP1BMsVnj', 1, 1, 0, 2, 1, 119, NOW(), NOW());
|
||||
|
||||
-- 默认用户:admin/admin
|
||||
INSERT INTO sj_system_user (username, password, role)
|
||||
VALUES ('admin', '465c194afb65670f38322df087f0a9bb225cc257e43eb4ac5a0c98ef5b3173ac', 2);
|
@@ -0,0 +1,821 @@
|
||||
-- liquibase formatted sql
|
||||
|
||||
-- changeset snail-job-server:1.1.0
|
||||
-- sj_namespace
|
||||
CREATE TABLE sj_namespace
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
name varchar(64) NOT NULL,
|
||||
unique_id varchar(64) NOT NULL,
|
||||
description varchar(256) NOT NULL DEFAULT '',
|
||||
deleted smallint NOT NULL DEFAULT 0,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE INDEX idx_sj_namespace_01 ON sj_namespace (name);
|
||||
|
||||
COMMENT ON COLUMN sj_namespace.id IS '主键';
|
||||
COMMENT ON COLUMN sj_namespace.name IS '名称';
|
||||
COMMENT ON COLUMN sj_namespace.unique_id IS '唯一id';
|
||||
COMMENT ON COLUMN sj_namespace.description IS '描述';
|
||||
COMMENT ON COLUMN sj_namespace.deleted IS '逻辑删除 1、删除';
|
||||
COMMENT ON COLUMN sj_namespace.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_namespace.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_namespace IS '命名空间';
|
||||
|
||||
-- sj_group_config
|
||||
CREATE TABLE sj_group_config
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
group_name varchar(64) NOT NULL DEFAULT '',
|
||||
description varchar(256) NOT NULL DEFAULT '',
|
||||
token varchar(64) NOT NULL DEFAULT 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT',
|
||||
group_status smallint NOT NULL DEFAULT 0,
|
||||
version int NOT NULL,
|
||||
group_partition int NOT NULL,
|
||||
id_generator_mode smallint NOT NULL DEFAULT 1,
|
||||
init_scene smallint NOT NULL DEFAULT 0,
|
||||
bucket_index int NOT NULL DEFAULT 0,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE UNIQUE INDEX uk_sj_group_config_01 ON sj_group_config (namespace_id, group_name);
|
||||
|
||||
COMMENT ON COLUMN sj_group_config.id IS '主键';
|
||||
COMMENT ON COLUMN sj_group_config.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_group_config.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_group_config.description IS '组描述';
|
||||
COMMENT ON COLUMN sj_group_config.token IS 'token';
|
||||
COMMENT ON COLUMN sj_group_config.group_status IS '组状态 0、未启用 1、启用';
|
||||
COMMENT ON COLUMN sj_group_config.version IS '版本号';
|
||||
COMMENT ON COLUMN sj_group_config.group_partition IS '分区';
|
||||
COMMENT ON COLUMN sj_group_config.id_generator_mode IS '唯一id生成模式 默认号段模式';
|
||||
COMMENT ON COLUMN sj_group_config.init_scene IS '是否初始化场景 0:否 1:是';
|
||||
COMMENT ON COLUMN sj_group_config.bucket_index IS 'bucket';
|
||||
COMMENT ON COLUMN sj_group_config.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_group_config.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_group_config IS '组配置';
|
||||
|
||||
-- sj_notify_config
|
||||
CREATE TABLE sj_notify_config
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
group_name varchar(64) NOT NULL,
|
||||
business_id varchar(64) NOT NULL,
|
||||
system_task_type smallint NOT NULL DEFAULT 3,
|
||||
notify_status smallint NOT NULL DEFAULT 0,
|
||||
recipient_ids varchar(128) NOT NULL,
|
||||
notify_threshold int NOT NULL DEFAULT 0,
|
||||
notify_scene smallint NOT NULL DEFAULT 0,
|
||||
rate_limiter_status smallint NOT NULL DEFAULT 0,
|
||||
rate_limiter_threshold int NOT NULL DEFAULT 0,
|
||||
description varchar(256) NOT NULL DEFAULT '',
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE INDEX idx_sj_notify_config_01 ON sj_notify_config (namespace_id, group_name, business_id);
|
||||
|
||||
COMMENT ON COLUMN sj_notify_config.id IS '主键';
|
||||
COMMENT ON COLUMN sj_notify_config.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_notify_config.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_notify_config.business_id IS '业务id ( job_id或workflow_id或scene_name ) ';
|
||||
COMMENT ON COLUMN sj_notify_config.system_task_type IS '任务类型 1. 重试任务 2. 重试回调 3、JOB任务 4、WORKFLOW任务';
|
||||
COMMENT ON COLUMN sj_notify_config.notify_status IS '通知状态 0、未启用 1、启用';
|
||||
COMMENT ON COLUMN sj_notify_config.recipient_ids IS '接收人id列表';
|
||||
COMMENT ON COLUMN sj_notify_config.notify_threshold IS '通知阈值';
|
||||
COMMENT ON COLUMN sj_notify_config.notify_scene IS '通知场景';
|
||||
COMMENT ON COLUMN sj_notify_config.rate_limiter_status IS '限流状态 0、未启用 1、启用';
|
||||
COMMENT ON COLUMN sj_notify_config.rate_limiter_threshold IS '每秒限流阈值';
|
||||
COMMENT ON COLUMN sj_notify_config.description IS '描述';
|
||||
COMMENT ON COLUMN sj_notify_config.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_notify_config.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_notify_config IS '通知配置';
|
||||
|
||||
-- sj_notify_recipient
|
||||
CREATE TABLE sj_notify_recipient
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
recipient_name varchar(64) NOT NULL,
|
||||
notify_type smallint NOT NULL DEFAULT 0,
|
||||
notify_attribute varchar(512) NOT NULL,
|
||||
description varchar(256) NOT NULL DEFAULT '',
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE INDEX idx_sj_notify_recipient_01 ON sj_notify_recipient (namespace_id);
|
||||
|
||||
COMMENT ON COLUMN sj_notify_recipient.id IS '主键';
|
||||
COMMENT ON COLUMN sj_notify_recipient.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_notify_recipient.recipient_name IS '接收人名称';
|
||||
COMMENT ON COLUMN sj_notify_recipient.notify_type IS '通知类型 1、钉钉 2、邮件 3、企业微信 4 飞书 5 webhook';
|
||||
COMMENT ON COLUMN sj_notify_recipient.notify_attribute IS '配置属性';
|
||||
COMMENT ON COLUMN sj_notify_recipient.description IS '描述';
|
||||
COMMENT ON COLUMN sj_notify_recipient.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_notify_recipient.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_notify_recipient IS '告警通知接收人';
|
||||
|
||||
-- sj_retry_dead_letter_0
|
||||
CREATE TABLE sj_retry_dead_letter_0
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
unique_id varchar(64) NOT NULL,
|
||||
group_name varchar(64) NOT NULL,
|
||||
scene_name varchar(64) NOT NULL,
|
||||
idempotent_id varchar(64) NOT NULL,
|
||||
biz_no varchar(64) NOT NULL DEFAULT '',
|
||||
executor_name varchar(512) NOT NULL DEFAULT '',
|
||||
args_str text NOT NULL,
|
||||
ext_attrs text NOT NULL,
|
||||
task_type smallint NOT NULL DEFAULT 1,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE UNIQUE INDEX uk_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, unique_id);
|
||||
|
||||
CREATE INDEX idx_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, scene_name);
|
||||
CREATE INDEX idx_sj_retry_dead_letter_0_02 ON sj_retry_dead_letter_0 (idempotent_id);
|
||||
CREATE INDEX idx_sj_retry_dead_letter_0_03 ON sj_retry_dead_letter_0 (biz_no);
|
||||
CREATE INDEX idx_sj_retry_dead_letter_0_04 ON sj_retry_dead_letter_0 (create_dt);
|
||||
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.id IS '主键';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.unique_id IS '同组下id唯一';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.scene_name IS '场景名称';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.idempotent_id IS '幂等id';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.biz_no IS '业务编号';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.executor_name IS '执行器名称';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.args_str IS '执行方法参数';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.task_type IS '任务类型 1、重试数据 2、回调数据';
|
||||
COMMENT ON COLUMN sj_retry_dead_letter_0.create_dt IS '创建时间';
|
||||
COMMENT ON TABLE sj_retry_dead_letter_0 IS '死信队列表';
|
||||
|
||||
-- sj_retry_task_0
|
||||
CREATE TABLE sj_retry_task_0
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
unique_id varchar(64) NOT NULL,
|
||||
group_name varchar(64) NOT NULL,
|
||||
scene_name varchar(64) NOT NULL,
|
||||
idempotent_id varchar(64) NOT NULL,
|
||||
biz_no varchar(64) NOT NULL DEFAULT '',
|
||||
executor_name varchar(512) NOT NULL DEFAULT '',
|
||||
args_str text NOT NULL,
|
||||
ext_attrs text NOT NULL,
|
||||
next_trigger_at timestamp NOT NULL,
|
||||
retry_count int NOT NULL DEFAULT 0,
|
||||
retry_status smallint NOT NULL DEFAULT 0,
|
||||
task_type smallint NOT NULL DEFAULT 1,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE UNIQUE INDEX uk_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, unique_id);
|
||||
|
||||
CREATE INDEX idx_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, scene_name);
|
||||
CREATE INDEX idx_sj_retry_task_0_02 ON sj_retry_task_0 (namespace_id, group_name, task_type);
|
||||
CREATE INDEX idx_sj_retry_task_0_03 ON sj_retry_task_0 (namespace_id, group_name, retry_status);
|
||||
CREATE INDEX idx_sj_retry_task_0_04 ON sj_retry_task_0 (idempotent_id);
|
||||
CREATE INDEX idx_sj_retry_task_0_05 ON sj_retry_task_0 (biz_no);
|
||||
CREATE INDEX idx_sj_retry_task_0_06 ON sj_retry_task_0 (create_dt);
|
||||
|
||||
COMMENT ON COLUMN sj_retry_task_0.id IS '主键';
|
||||
COMMENT ON COLUMN sj_retry_task_0.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_retry_task_0.unique_id IS '同组下id唯一';
|
||||
COMMENT ON COLUMN sj_retry_task_0.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_retry_task_0.scene_name IS '场景名称';
|
||||
COMMENT ON COLUMN sj_retry_task_0.idempotent_id IS '幂等id';
|
||||
COMMENT ON COLUMN sj_retry_task_0.biz_no IS '业务编号';
|
||||
COMMENT ON COLUMN sj_retry_task_0.executor_name IS '执行器名称';
|
||||
COMMENT ON COLUMN sj_retry_task_0.args_str IS '执行方法参数';
|
||||
COMMENT ON COLUMN sj_retry_task_0.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_retry_task_0.next_trigger_at IS '下次触发时间';
|
||||
COMMENT ON COLUMN sj_retry_task_0.retry_count IS '重试次数';
|
||||
COMMENT ON COLUMN sj_retry_task_0.retry_status IS '重试状态 0、重试中 1、成功 2、最大重试次数';
|
||||
COMMENT ON COLUMN sj_retry_task_0.task_type IS '任务类型 1、重试数据 2、回调数据';
|
||||
COMMENT ON COLUMN sj_retry_task_0.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_retry_task_0.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_retry_task_0 IS '任务表';
|
||||
|
||||
-- sj_retry_task_log
|
||||
CREATE TABLE sj_retry_task_log
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
unique_id varchar(64) NOT NULL,
|
||||
group_name varchar(64) NOT NULL,
|
||||
scene_name varchar(64) NOT NULL,
|
||||
idempotent_id varchar(64) NOT NULL,
|
||||
biz_no varchar(64) NOT NULL DEFAULT '',
|
||||
executor_name varchar(512) NOT NULL DEFAULT '',
|
||||
args_str text NOT NULL,
|
||||
ext_attrs text NOT NULL,
|
||||
retry_status smallint NOT NULL DEFAULT 0,
|
||||
task_type smallint NOT NULL DEFAULT 1,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE INDEX idx_sj_retry_task_log_01 ON sj_retry_task_log (namespace_id, group_name, scene_name);
|
||||
CREATE INDEX idx_sj_retry_task_log_02 ON sj_retry_task_log (retry_status);
|
||||
CREATE INDEX idx_sj_retry_task_log_03 ON sj_retry_task_log (idempotent_id);
|
||||
CREATE INDEX idx_sj_retry_task_log_04 ON sj_retry_task_log (unique_id);
|
||||
CREATE INDEX idx_sj_retry_task_log_05 ON sj_retry_task_log (biz_no);
|
||||
CREATE INDEX idx_sj_retry_task_log_06 ON sj_retry_task_log (create_dt);
|
||||
|
||||
COMMENT ON COLUMN sj_retry_task_log.id IS '主键';
|
||||
COMMENT ON COLUMN sj_retry_task_log.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_retry_task_log.unique_id IS '同组下id唯一';
|
||||
COMMENT ON COLUMN sj_retry_task_log.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_retry_task_log.scene_name IS '场景名称';
|
||||
COMMENT ON COLUMN sj_retry_task_log.idempotent_id IS '幂等id';
|
||||
COMMENT ON COLUMN sj_retry_task_log.biz_no IS '业务编号';
|
||||
COMMENT ON COLUMN sj_retry_task_log.executor_name IS '执行器名称';
|
||||
COMMENT ON COLUMN sj_retry_task_log.args_str IS '执行方法参数';
|
||||
COMMENT ON COLUMN sj_retry_task_log.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_retry_task_log.retry_status IS '重试状态 0、重试中 1、成功 2、最大次数';
|
||||
COMMENT ON COLUMN sj_retry_task_log.task_type IS '任务类型 1、重试数据 2、回调数据';
|
||||
COMMENT ON COLUMN sj_retry_task_log.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_retry_task_log.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_retry_task_log IS '任务日志基础信息表';
|
||||
|
||||
-- sj_retry_task_log_message
|
||||
CREATE TABLE sj_retry_task_log_message
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
group_name varchar(64) NOT NULL,
|
||||
unique_id varchar(64) NOT NULL,
|
||||
message text NOT NULL,
|
||||
log_num int NOT NULL DEFAULT 1,
|
||||
real_time bigint NOT NULL DEFAULT 0,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE INDEX idx_sj_retry_task_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, unique_id);
|
||||
CREATE INDEX idx_sj_retry_task_log_message_02 ON sj_retry_task_log_message (create_dt);
|
||||
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.id IS '主键';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.unique_id IS '同组下id唯一';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.message IS '异常信息';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.log_num IS '日志数量';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.real_time IS '上报时间';
|
||||
COMMENT ON COLUMN sj_retry_task_log_message.create_dt IS '创建时间';
|
||||
COMMENT ON TABLE sj_retry_task_log_message IS '任务调度日志信息记录表';
|
||||
|
||||
-- sj_retry_scene_config
|
||||
CREATE TABLE sj_retry_scene_config
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
scene_name varchar(64) NOT NULL,
|
||||
group_name varchar(64) NOT NULL,
|
||||
scene_status smallint NOT NULL DEFAULT 0,
|
||||
max_retry_count int NOT NULL DEFAULT 5,
|
||||
back_off smallint NOT NULL DEFAULT 1,
|
||||
trigger_interval varchar(16) NOT NULL DEFAULT '',
|
||||
deadline_request bigint NOT NULL DEFAULT 60000,
|
||||
executor_timeout int NOT NULL DEFAULT 5,
|
||||
route_key smallint NOT NULL DEFAULT 4,
|
||||
description varchar(256) NOT NULL DEFAULT '',
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE UNIQUE INDEX uk_sj_retry_scene_config_01 ON sj_retry_scene_config (namespace_id, group_name, scene_name);
|
||||
|
||||
COMMENT ON COLUMN sj_retry_scene_config.id IS '主键';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.scene_name IS '场景名称';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.scene_status IS '组状态 0、未启用 1、启用';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.max_retry_count IS '最大重试次数';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.back_off IS '1、默认等级 2、固定间隔时间 3、CRON 表达式';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.trigger_interval IS '间隔时长';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.deadline_request IS 'Deadline Request 调用链超时 单位毫秒';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.executor_timeout IS '任务执行超时时间,单位秒';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.route_key IS '路由策略';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.description IS '描述';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_retry_scene_config.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_retry_scene_config IS '场景配置';
|
||||
|
||||
-- sj_server_node
|
||||
CREATE TABLE sj_server_node
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
group_name varchar(64) NOT NULL,
|
||||
host_id varchar(64) NOT NULL,
|
||||
host_ip varchar(64) NOT NULL,
|
||||
host_port int NOT NULL,
|
||||
expire_at timestamp NOT NULL,
|
||||
node_type smallint NOT NULL,
|
||||
ext_attrs varchar(256) NULL DEFAULT '',
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE UNIQUE INDEX uk_sj_server_node_01 ON sj_server_node (host_id, host_ip);
|
||||
|
||||
CREATE INDEX idx_sj_server_node_01 ON sj_server_node (namespace_id, group_name);
|
||||
CREATE INDEX idx_sj_server_node_02 ON sj_server_node (expire_at, node_type);
|
||||
|
||||
COMMENT ON COLUMN sj_server_node.id IS '主键';
|
||||
COMMENT ON COLUMN sj_server_node.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_server_node.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_server_node.host_id IS '主机id';
|
||||
COMMENT ON COLUMN sj_server_node.host_ip IS '机器ip';
|
||||
COMMENT ON COLUMN sj_server_node.host_port IS '机器端口';
|
||||
COMMENT ON COLUMN sj_server_node.expire_at IS '过期时间';
|
||||
COMMENT ON COLUMN sj_server_node.node_type IS '节点类型 1、客户端 2、是服务端';
|
||||
COMMENT ON COLUMN sj_server_node.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_server_node.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_server_node.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_server_node IS '服务器节点';
|
||||
|
||||
-- sj_distributed_lock
|
||||
CREATE TABLE sj_distributed_lock
|
||||
(
|
||||
name varchar(64) PRIMARY KEY,
|
||||
lock_until timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
|
||||
locked_at timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
|
||||
locked_by varchar(255) NOT NULL,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
COMMENT ON COLUMN sj_distributed_lock.name IS '锁名称';
|
||||
COMMENT ON COLUMN sj_distributed_lock.lock_until IS '锁定时长';
|
||||
COMMENT ON COLUMN sj_distributed_lock.locked_at IS '锁定时间';
|
||||
COMMENT ON COLUMN sj_distributed_lock.locked_by IS '锁定者';
|
||||
COMMENT ON COLUMN sj_distributed_lock.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_distributed_lock.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_distributed_lock IS '锁定表';
|
||||
|
||||
-- sj_system_user
|
||||
CREATE TABLE sj_system_user
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
username varchar(64) NOT NULL,
|
||||
password varchar(128) NOT NULL,
|
||||
role smallint NOT NULL DEFAULT 0,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
COMMENT ON COLUMN sj_system_user.id IS '主键';
|
||||
COMMENT ON COLUMN sj_system_user.username IS '账号';
|
||||
COMMENT ON COLUMN sj_system_user.password IS '密码';
|
||||
COMMENT ON COLUMN sj_system_user.role IS '角色:1-普通用户、2-管理员';
|
||||
COMMENT ON COLUMN sj_system_user.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_system_user.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_system_user IS '系统用户表';
|
||||
|
||||
-- sj_system_user_permission
|
||||
CREATE TABLE sj_system_user_permission
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
group_name varchar(64) NOT NULL,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
system_user_id bigint NOT NULL,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE UNIQUE INDEX uk_sj_system_user_permission_01 ON sj_system_user_permission (namespace_id, group_name, system_user_id);
|
||||
|
||||
COMMENT ON COLUMN sj_system_user_permission.id IS '主键';
|
||||
COMMENT ON COLUMN sj_system_user_permission.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_system_user_permission.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_system_user_permission.system_user_id IS '系统用户id';
|
||||
COMMENT ON COLUMN sj_system_user_permission.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_system_user_permission.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_system_user_permission IS '系统用户权限表';
|
||||
|
||||
-- sj_sequence_alloc
|
||||
CREATE TABLE sj_sequence_alloc
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
group_name varchar(64) NOT NULL DEFAULT '',
|
||||
max_id bigint NOT NULL DEFAULT 1,
|
||||
step int NOT NULL DEFAULT 100,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE UNIQUE INDEX uk_sj_sequence_alloc_01 ON sj_sequence_alloc (namespace_id, group_name);
|
||||
|
||||
COMMENT ON COLUMN sj_sequence_alloc.id IS '主键';
|
||||
COMMENT ON COLUMN sj_sequence_alloc.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_sequence_alloc.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_sequence_alloc.max_id IS '最大id';
|
||||
COMMENT ON COLUMN sj_sequence_alloc.step IS '步长';
|
||||
COMMENT ON COLUMN sj_sequence_alloc.update_dt IS '更新时间';
|
||||
COMMENT ON TABLE sj_sequence_alloc IS '号段模式序号ID分配表';
|
||||
|
||||
-- sj_job
|
||||
CREATE TABLE sj_job
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
group_name varchar(64) NOT NULL,
|
||||
job_name varchar(64) NOT NULL,
|
||||
args_str text NULL DEFAULT NULL,
|
||||
args_type smallint NOT NULL DEFAULT 1,
|
||||
next_trigger_at bigint NOT NULL,
|
||||
job_status smallint NOT NULL DEFAULT 1,
|
||||
task_type smallint NOT NULL DEFAULT 1,
|
||||
route_key smallint NOT NULL DEFAULT 4,
|
||||
executor_type smallint NOT NULL DEFAULT 1,
|
||||
executor_info varchar(255) NULL DEFAULT NULL,
|
||||
trigger_type smallint NOT NULL,
|
||||
trigger_interval varchar(255) NOT NULL,
|
||||
block_strategy smallint NOT NULL DEFAULT 1,
|
||||
executor_timeout int NOT NULL DEFAULT 0,
|
||||
max_retry_times int NOT NULL DEFAULT 0,
|
||||
parallel_num int NOT NULL DEFAULT 1,
|
||||
retry_interval int NOT NULL DEFAULT 0,
|
||||
bucket_index int NOT NULL DEFAULT 0,
|
||||
resident smallint NOT NULL DEFAULT 0,
|
||||
description varchar(256) NOT NULL DEFAULT '',
|
||||
ext_attrs varchar(256) NULL DEFAULT '',
|
||||
deleted smallint NOT NULL DEFAULT 0,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE INDEX idx_sj_job_01 ON sj_job (namespace_id, group_name);
|
||||
CREATE INDEX idx_sj_job_02 ON sj_job (job_status, bucket_index);
|
||||
CREATE INDEX idx_sj_job_03 ON sj_job (create_dt);
|
||||
|
||||
COMMENT ON COLUMN sj_job.id IS '主键';
|
||||
COMMENT ON COLUMN sj_job.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_job.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_job.job_name IS '名称';
|
||||
COMMENT ON COLUMN sj_job.args_str IS '执行方法参数';
|
||||
COMMENT ON COLUMN sj_job.args_type IS '参数类型 ';
|
||||
COMMENT ON COLUMN sj_job.next_trigger_at IS '下次触发时间';
|
||||
COMMENT ON COLUMN sj_job.job_status IS '任务状态 0、关闭、1、开启';
|
||||
COMMENT ON COLUMN sj_job.task_type IS '任务类型 1、集群 2、广播 3、切片';
|
||||
COMMENT ON COLUMN sj_job.route_key IS '路由策略';
|
||||
COMMENT ON COLUMN sj_job.executor_type IS '执行器类型';
|
||||
COMMENT ON COLUMN sj_job.executor_info IS '执行器名称';
|
||||
COMMENT ON COLUMN sj_job.trigger_type IS '触发类型 1.CRON 表达式 2. 固定时间';
|
||||
COMMENT ON COLUMN sj_job.trigger_interval IS '间隔时长';
|
||||
COMMENT ON COLUMN sj_job.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行';
|
||||
COMMENT ON COLUMN sj_job.executor_timeout IS '任务执行超时时间,单位秒';
|
||||
COMMENT ON COLUMN sj_job.max_retry_times IS '最大重试次数';
|
||||
COMMENT ON COLUMN sj_job.parallel_num IS '并行数';
|
||||
COMMENT ON COLUMN sj_job.retry_interval IS '重试间隔 ( s ) ';
|
||||
COMMENT ON COLUMN sj_job.bucket_index IS 'bucket';
|
||||
COMMENT ON COLUMN sj_job.resident IS '是否是常驻任务';
|
||||
COMMENT ON COLUMN sj_job.description IS '描述';
|
||||
COMMENT ON COLUMN sj_job.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_job.deleted IS '逻辑删除 1、删除';
|
||||
COMMENT ON COLUMN sj_job.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_job.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_job IS '任务信息';
|
||||
|
||||
-- sj_job_log_message
|
||||
CREATE TABLE sj_job_log_message
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
group_name varchar(64) NOT NULL,
|
||||
job_id bigint NOT NULL,
|
||||
task_batch_id bigint NOT NULL,
|
||||
task_id bigint NOT NULL,
|
||||
message text NOT NULL,
|
||||
log_num int NOT NULL DEFAULT 1,
|
||||
real_time bigint NOT NULL DEFAULT 0,
|
||||
ext_attrs varchar(256) NULL DEFAULT '',
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE INDEX idx_sj_job_log_message_01 ON sj_job_log_message (task_batch_id, task_id);
|
||||
CREATE INDEX idx_sj_job_log_message_02 ON sj_job_log_message (create_dt);
|
||||
CREATE INDEX idx_sj_job_log_message_03 ON sj_job_log_message (namespace_id, group_name);
|
||||
|
||||
COMMENT ON COLUMN sj_job_log_message.id IS '主键';
|
||||
COMMENT ON COLUMN sj_job_log_message.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_job_log_message.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_job_log_message.job_id IS '任务信息id';
|
||||
COMMENT ON COLUMN sj_job_log_message.task_batch_id IS '任务批次id';
|
||||
COMMENT ON COLUMN sj_job_log_message.task_id IS '调度任务id';
|
||||
COMMENT ON COLUMN sj_job_log_message.message IS '调度信息';
|
||||
COMMENT ON COLUMN sj_job_log_message.log_num IS '日志数量';
|
||||
COMMENT ON COLUMN sj_job_log_message.real_time IS '上报时间';
|
||||
COMMENT ON COLUMN sj_job_log_message.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_job_log_message.create_dt IS '创建时间';
|
||||
COMMENT ON TABLE sj_job_log_message IS '调度日志';
|
||||
|
||||
-- sj_job_task
|
||||
CREATE TABLE sj_job_task
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
group_name varchar(64) NOT NULL,
|
||||
job_id bigint NOT NULL,
|
||||
task_batch_id bigint NOT NULL,
|
||||
parent_id bigint NOT NULL DEFAULT 0,
|
||||
task_status smallint NOT NULL DEFAULT 0,
|
||||
retry_count int NOT NULL DEFAULT 0,
|
||||
mr_stage smallint NULL DEFAULT NULL,
|
||||
leaf smallint NOT NULL DEFAULT '1',
|
||||
task_name varchar(255) NOT NULL DEFAULT '',
|
||||
client_info varchar(128) NULL DEFAULT NULL,
|
||||
wf_context text NULL DEFAULT NULL,
|
||||
result_message text NOT NULL,
|
||||
args_str text NULL DEFAULT NULL,
|
||||
args_type smallint NOT NULL DEFAULT 1,
|
||||
ext_attrs varchar(256) NULL DEFAULT '',
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE INDEX idx_sj_job_task_01 ON sj_job_task (task_batch_id, task_status);
|
||||
CREATE INDEX idx_sj_job_task_02 ON sj_job_task (create_dt);
|
||||
CREATE INDEX idx_sj_job_task_03 ON sj_job_task (namespace_id, group_name);
|
||||
|
||||
COMMENT ON COLUMN sj_job_task.id IS '主键';
|
||||
COMMENT ON COLUMN sj_job_task.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_job_task.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_job_task.job_id IS '任务信息id';
|
||||
COMMENT ON COLUMN sj_job_task.task_batch_id IS '调度任务id';
|
||||
COMMENT ON COLUMN sj_job_task.parent_id IS '父执行器id';
|
||||
COMMENT ON COLUMN sj_job_task.task_status IS '执行的状态 0、失败 1、成功';
|
||||
COMMENT ON COLUMN sj_job_task.retry_count IS '重试次数';
|
||||
COMMENT ON COLUMN sj_job_task.mr_stage IS '动态分片所处阶段 1:map 2:reduce 3:mergeReduce';
|
||||
COMMENT ON COLUMN sj_job_task.leaf IS '叶子节点';
|
||||
COMMENT ON COLUMN sj_job_task.task_name IS '任务名称';
|
||||
COMMENT ON COLUMN sj_job_task.client_info IS '客户端地址 clientId#ip:port';
|
||||
COMMENT ON COLUMN sj_job_task.wf_context IS '工作流全局上下文';
|
||||
COMMENT ON COLUMN sj_job_task.result_message IS '执行结果';
|
||||
COMMENT ON COLUMN sj_job_task.args_str IS '执行方法参数';
|
||||
COMMENT ON COLUMN sj_job_task.args_type IS '参数类型 ';
|
||||
COMMENT ON COLUMN sj_job_task.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_job_task.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_job_task.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_job_task IS '任务实例';
|
||||
|
||||
-- sj_job_task_batch
|
||||
CREATE TABLE sj_job_task_batch
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
group_name varchar(64) NOT NULL,
|
||||
job_id bigint NOT NULL,
|
||||
workflow_node_id bigint NOT NULL DEFAULT 0,
|
||||
parent_workflow_node_id bigint NOT NULL DEFAULT 0,
|
||||
workflow_task_batch_id bigint NOT NULL DEFAULT 0,
|
||||
task_batch_status smallint NOT NULL DEFAULT 0,
|
||||
operation_reason smallint NOT NULL DEFAULT 0,
|
||||
execution_at bigint NOT NULL DEFAULT 0,
|
||||
system_task_type smallint NOT NULL DEFAULT 3,
|
||||
parent_id varchar(64) NOT NULL DEFAULT '',
|
||||
ext_attrs varchar(256) NULL DEFAULT '',
|
||||
deleted smallint NOT NULL DEFAULT 0,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE INDEX idx_sj_job_task_batch_01 ON sj_job_task_batch (job_id, task_batch_status);
|
||||
CREATE INDEX idx_sj_job_task_batch_02 ON sj_job_task_batch (create_dt);
|
||||
CREATE INDEX idx_sj_job_task_batch_03 ON sj_job_task_batch (namespace_id, group_name);
|
||||
CREATE INDEX idx_sj_job_task_batch_04 ON sj_job_task_batch (workflow_task_batch_id, workflow_node_id);
|
||||
|
||||
COMMENT ON COLUMN sj_job_task_batch.id IS '主键';
|
||||
COMMENT ON COLUMN sj_job_task_batch.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_job_task_batch.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_job_task_batch.job_id IS '任务id';
|
||||
COMMENT ON COLUMN sj_job_task_batch.workflow_node_id IS '工作流节点id';
|
||||
COMMENT ON COLUMN sj_job_task_batch.parent_workflow_node_id IS '工作流任务父批次id';
|
||||
COMMENT ON COLUMN sj_job_task_batch.workflow_task_batch_id IS '工作流任务批次id';
|
||||
COMMENT ON COLUMN sj_job_task_batch.task_batch_status IS '任务批次状态 0、失败 1、成功';
|
||||
COMMENT ON COLUMN sj_job_task_batch.operation_reason IS '操作原因';
|
||||
COMMENT ON COLUMN sj_job_task_batch.execution_at IS '任务执行时间';
|
||||
COMMENT ON COLUMN sj_job_task_batch.system_task_type IS '任务类型 3、JOB任务 4、WORKFLOW任务';
|
||||
COMMENT ON COLUMN sj_job_task_batch.parent_id IS '父节点';
|
||||
COMMENT ON COLUMN sj_job_task_batch.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_job_task_batch.deleted IS '逻辑删除 1、删除';
|
||||
COMMENT ON COLUMN sj_job_task_batch.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_job_task_batch.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_job_task_batch IS '任务批次';
|
||||
|
||||
-- sj_job_summary
|
||||
CREATE TABLE sj_job_summary
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
group_name varchar(64) NOT NULL DEFAULT '',
|
||||
business_id bigint NOT NULL,
|
||||
system_task_type smallint NOT NULL DEFAULT 3,
|
||||
trigger_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
success_num int NOT NULL DEFAULT 0,
|
||||
fail_num int NOT NULL DEFAULT 0,
|
||||
fail_reason varchar(512) NOT NULL DEFAULT '',
|
||||
stop_num int NOT NULL DEFAULT 0,
|
||||
stop_reason varchar(512) NOT NULL DEFAULT '',
|
||||
cancel_num int NOT NULL DEFAULT 0,
|
||||
cancel_reason varchar(512) NOT NULL DEFAULT '',
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE UNIQUE INDEX uk_sj_job_summary_01 ON sj_job_summary (trigger_at, system_task_type, business_id);
|
||||
|
||||
CREATE INDEX idx_sj_job_summary_01 ON sj_job_summary (namespace_id, group_name, business_id);
|
||||
|
||||
COMMENT ON COLUMN sj_job_summary.id IS '主键';
|
||||
COMMENT ON COLUMN sj_job_summary.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_job_summary.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_job_summary.business_id IS '业务id ( job_id或workflow_id ) ';
|
||||
COMMENT ON COLUMN sj_job_summary.system_task_type IS '任务类型 3、JOB任务 4、WORKFLOW任务';
|
||||
COMMENT ON COLUMN sj_job_summary.trigger_at IS '统计时间';
|
||||
COMMENT ON COLUMN sj_job_summary.success_num IS '执行成功-日志数量';
|
||||
COMMENT ON COLUMN sj_job_summary.fail_num IS '执行失败-日志数量';
|
||||
COMMENT ON COLUMN sj_job_summary.fail_reason IS '失败原因';
|
||||
COMMENT ON COLUMN sj_job_summary.stop_num IS '执行失败-日志数量';
|
||||
COMMENT ON COLUMN sj_job_summary.stop_reason IS '失败原因';
|
||||
COMMENT ON COLUMN sj_job_summary.cancel_num IS '执行失败-日志数量';
|
||||
COMMENT ON COLUMN sj_job_summary.cancel_reason IS '失败原因';
|
||||
COMMENT ON COLUMN sj_job_summary.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_job_summary.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_job_summary IS 'DashBoard_Job';
|
||||
|
||||
-- sj_retry_summary
|
||||
CREATE TABLE sj_retry_summary
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
group_name varchar(64) NOT NULL DEFAULT '',
|
||||
scene_name varchar(50) NOT NULL DEFAULT '',
|
||||
trigger_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
running_num int NOT NULL DEFAULT 0,
|
||||
finish_num int NOT NULL DEFAULT 0,
|
||||
max_count_num int NOT NULL DEFAULT 0,
|
||||
suspend_num int NOT NULL DEFAULT 0,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE UNIQUE INDEX uk_sj_retry_summary_01 ON sj_retry_summary (namespace_id, group_name, scene_name, trigger_at);
|
||||
|
||||
CREATE INDEX idx_sj_retry_summary_01 ON sj_retry_summary (trigger_at);
|
||||
|
||||
COMMENT ON COLUMN sj_retry_summary.id IS '主键';
|
||||
COMMENT ON COLUMN sj_retry_summary.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_retry_summary.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_retry_summary.scene_name IS '场景名称';
|
||||
COMMENT ON COLUMN sj_retry_summary.trigger_at IS '统计时间';
|
||||
COMMENT ON COLUMN sj_retry_summary.running_num IS '重试中-日志数量';
|
||||
COMMENT ON COLUMN sj_retry_summary.finish_num IS '重试完成-日志数量';
|
||||
COMMENT ON COLUMN sj_retry_summary.max_count_num IS '重试到达最大次数-日志数量';
|
||||
COMMENT ON COLUMN sj_retry_summary.suspend_num IS '暂停重试-日志数量';
|
||||
COMMENT ON COLUMN sj_retry_summary.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_retry_summary.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_retry_summary IS 'DashBoard_Retry';
|
||||
|
||||
-- sj_workflow
|
||||
CREATE TABLE sj_workflow
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
workflow_name varchar(64) NOT NULL,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
group_name varchar(64) NOT NULL,
|
||||
workflow_status smallint NOT NULL DEFAULT 1,
|
||||
trigger_type smallint NOT NULL,
|
||||
trigger_interval varchar(255) NOT NULL,
|
||||
next_trigger_at bigint NOT NULL,
|
||||
block_strategy smallint NOT NULL DEFAULT 1,
|
||||
executor_timeout int NOT NULL DEFAULT 0,
|
||||
description varchar(256) NOT NULL DEFAULT '',
|
||||
flow_info text NULL DEFAULT NULL,
|
||||
wf_context text NULL DEFAULT NULL,
|
||||
bucket_index int NOT NULL DEFAULT 0,
|
||||
version int NOT NULL,
|
||||
ext_attrs varchar(256) NULL DEFAULT '',
|
||||
deleted smallint NOT NULL DEFAULT 0,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE INDEX idx_sj_workflow_01 ON sj_workflow (create_dt);
|
||||
CREATE INDEX idx_sj_workflow_02 ON sj_workflow (namespace_id, group_name);
|
||||
|
||||
COMMENT ON COLUMN sj_workflow.id IS '主键';
|
||||
COMMENT ON COLUMN sj_workflow.workflow_name IS '工作流名称';
|
||||
COMMENT ON COLUMN sj_workflow.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_workflow.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_workflow.workflow_status IS '工作流状态 0、关闭、1、开启';
|
||||
COMMENT ON COLUMN sj_workflow.trigger_type IS '触发类型 1.CRON 表达式 2. 固定时间';
|
||||
COMMENT ON COLUMN sj_workflow.trigger_interval IS '间隔时长';
|
||||
COMMENT ON COLUMN sj_workflow.next_trigger_at IS '下次触发时间';
|
||||
COMMENT ON COLUMN sj_workflow.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行';
|
||||
COMMENT ON COLUMN sj_workflow.executor_timeout IS '任务执行超时时间,单位秒';
|
||||
COMMENT ON COLUMN sj_workflow.description IS '描述';
|
||||
COMMENT ON COLUMN sj_workflow.flow_info IS '流程信息';
|
||||
COMMENT ON COLUMN sj_workflow.wf_context IS '上下文';
|
||||
COMMENT ON COLUMN sj_workflow.bucket_index IS 'bucket';
|
||||
COMMENT ON COLUMN sj_workflow.version IS '版本号';
|
||||
COMMENT ON COLUMN sj_workflow.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_workflow.deleted IS '逻辑删除 1、删除';
|
||||
COMMENT ON COLUMN sj_workflow.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_workflow.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_workflow IS '工作流';
|
||||
|
||||
-- sj_workflow_node
|
||||
CREATE TABLE sj_workflow_node
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
node_name varchar(64) NOT NULL,
|
||||
group_name varchar(64) NOT NULL,
|
||||
job_id bigint NOT NULL,
|
||||
workflow_id bigint NOT NULL,
|
||||
node_type smallint NOT NULL DEFAULT 1,
|
||||
expression_type smallint NOT NULL DEFAULT 0,
|
||||
fail_strategy smallint NOT NULL DEFAULT 1,
|
||||
workflow_node_status smallint NOT NULL DEFAULT 1,
|
||||
priority_level int NOT NULL DEFAULT 1,
|
||||
node_info text NULL DEFAULT NULL,
|
||||
version int NOT NULL,
|
||||
ext_attrs varchar(256) NULL DEFAULT '',
|
||||
deleted smallint NOT NULL DEFAULT 0,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE INDEX idx_sj_workflow_node_01 ON sj_workflow_node (create_dt);
|
||||
CREATE INDEX idx_sj_workflow_node_02 ON sj_workflow_node (namespace_id, group_name);
|
||||
|
||||
COMMENT ON COLUMN sj_workflow_node.id IS '主键';
|
||||
COMMENT ON COLUMN sj_workflow_node.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_workflow_node.node_name IS '节点名称';
|
||||
COMMENT ON COLUMN sj_workflow_node.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_workflow_node.job_id IS '任务信息id';
|
||||
COMMENT ON COLUMN sj_workflow_node.workflow_id IS '工作流ID';
|
||||
COMMENT ON COLUMN sj_workflow_node.node_type IS '1、任务节点 2、条件节点';
|
||||
COMMENT ON COLUMN sj_workflow_node.expression_type IS '1、SpEl、2、Aviator 3、QL';
|
||||
COMMENT ON COLUMN sj_workflow_node.fail_strategy IS '失败策略 1、跳过 2、阻塞';
|
||||
COMMENT ON COLUMN sj_workflow_node.workflow_node_status IS '工作流节点状态 0、关闭、1、开启';
|
||||
COMMENT ON COLUMN sj_workflow_node.priority_level IS '优先级';
|
||||
COMMENT ON COLUMN sj_workflow_node.node_info IS '节点信息 ';
|
||||
COMMENT ON COLUMN sj_workflow_node.version IS '版本号';
|
||||
COMMENT ON COLUMN sj_workflow_node.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_workflow_node.deleted IS '逻辑删除 1、删除';
|
||||
COMMENT ON COLUMN sj_workflow_node.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_workflow_node.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_workflow_node IS '工作流节点';
|
||||
|
||||
-- sj_workflow_task_batch
|
||||
CREATE TABLE sj_workflow_task_batch
|
||||
(
|
||||
id bigserial PRIMARY KEY,
|
||||
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
|
||||
group_name varchar(64) NOT NULL,
|
||||
workflow_id bigint NOT NULL,
|
||||
task_batch_status smallint NOT NULL DEFAULT 0,
|
||||
operation_reason smallint NOT NULL DEFAULT 0,
|
||||
flow_info text NULL DEFAULT NULL,
|
||||
wf_context text NULL DEFAULT NULL,
|
||||
execution_at bigint NOT NULL DEFAULT 0,
|
||||
ext_attrs varchar(256) NULL DEFAULT '',
|
||||
version int NOT NULL DEFAULT 1,
|
||||
deleted smallint NOT NULL DEFAULT 0,
|
||||
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE INDEX idx_sj_workflow_task_batch_01 ON sj_workflow_task_batch (workflow_id, task_batch_status);
|
||||
CREATE INDEX idx_sj_workflow_task_batch_02 ON sj_workflow_task_batch (create_dt);
|
||||
CREATE INDEX idx_sj_workflow_task_batch_03 ON sj_workflow_task_batch (namespace_id, group_name);
|
||||
|
||||
COMMENT ON COLUMN sj_workflow_task_batch.id IS '主键';
|
||||
COMMENT ON COLUMN sj_workflow_task_batch.namespace_id IS '命名空间id';
|
||||
COMMENT ON COLUMN sj_workflow_task_batch.group_name IS '组名称';
|
||||
COMMENT ON COLUMN sj_workflow_task_batch.workflow_id IS '工作流任务id';
|
||||
COMMENT ON COLUMN sj_workflow_task_batch.task_batch_status IS '任务批次状态 0、失败 1、成功';
|
||||
COMMENT ON COLUMN sj_workflow_task_batch.operation_reason IS '操作原因';
|
||||
COMMENT ON COLUMN sj_workflow_task_batch.flow_info IS '流程信息';
|
||||
COMMENT ON COLUMN sj_workflow_task_batch.wf_context IS '全局上下文';
|
||||
COMMENT ON COLUMN sj_workflow_task_batch.execution_at IS '任务执行时间';
|
||||
COMMENT ON COLUMN sj_workflow_task_batch.ext_attrs IS '扩展字段';
|
||||
COMMENT ON COLUMN sj_workflow_task_batch.version IS '版本号';
|
||||
COMMENT ON COLUMN sj_workflow_task_batch.deleted IS '逻辑删除 1、删除';
|
||||
COMMENT ON COLUMN sj_workflow_task_batch.create_dt IS '创建时间';
|
||||
COMMENT ON COLUMN sj_workflow_task_batch.update_dt IS '修改时间';
|
||||
COMMENT ON TABLE sj_workflow_task_batch IS '工作流批次';
|
@@ -0,0 +1,88 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<configuration debug="false" scan="true" scanPeriod="30 seconds">
|
||||
|
||||
<!-- 关闭 Logback 的状态监听器(通过更换默认状态监听器实现) -->
|
||||
<statusListener class="ch.qos.logback.core.status.NopStatusListener"/>
|
||||
|
||||
<!-- 应用名 -->
|
||||
<springProperty name="APP_NAME" source="spring.application.name" scope="context"/>
|
||||
<!-- 保存路径 -->
|
||||
<property name="LOG_PATH" value="${LOG_PATH:-./logs/job-server}"/>
|
||||
<!-- 字符集 -->
|
||||
<property name="LOG_CHARSET" value="utf-8"/>
|
||||
<!-- 格式化输出:%d 表示日期;%thread 表示线程名;%-5level:级别从左显示 5 个字符宽度;%msg:日志消息;%n 是换行符 -->
|
||||
<!-- 控制台输出格式(带颜色) -->
|
||||
<property name="CONSOLE_LOG_PATTERN" value="%red(%d{yyyy-MM-dd HH:mm:ss}) %highlight(%-5level) %green([%thread]) %boldMagenta(%logger{50}) - %msg%n"/>
|
||||
<!-- 文件输出格式 -->
|
||||
<property name="FILE_LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss} %-5level [%thread] %logger{50} - %msg%n"/>
|
||||
<!-- 单个日志文件大小上限 -->
|
||||
<property name="FILE_MAX_SIZE" value="20MB"/>
|
||||
|
||||
<!-- 输出日志到控制台 -->
|
||||
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
|
||||
<encoder>
|
||||
<pattern>${CONSOLE_LOG_PATTERN}</pattern>
|
||||
<charset>${LOG_CHARSET}</charset>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<!-- 输出日志到控制台(不带颜色) -->
|
||||
<appender name="CONSOLE_PROD" class="ch.qos.logback.core.ConsoleAppender">
|
||||
<encoder>
|
||||
<pattern>${FILE_LOG_PATTERN}</pattern>
|
||||
<charset>${LOG_CHARSET}</charset>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<!-- 输出日志到文件 -->
|
||||
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<!-- 正在记录的日志文件的路径及文件名 -->
|
||||
<file>${LOG_PATH}/${APP_NAME}.log</file>
|
||||
<!-- 滚动策略:基于文件大小和时间归档日志文件 -->
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
||||
<!-- 日志文件的路径及文件名 -->
|
||||
<fileNamePattern>${LOG_PATH}/%d{yyyy-MM-dd}/${APP_NAME}.%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern>
|
||||
<!-- 日志文件大小(超过指定大小后,会切分新文件,从索引 0 开始计数,例如:app.2024-01-01.1.log.gz ) -->
|
||||
<maxFileSize>${FILE_MAX_SIZE}</maxFileSize>
|
||||
<!-- 日志保留天数 -->
|
||||
<maxHistory>${FILE_MAX_HISTORY}</maxHistory>
|
||||
</rollingPolicy>
|
||||
<encoder>
|
||||
<pattern>${FILE_LOG_PATTERN}</pattern>
|
||||
<charset>${LOG_CHARSET}</charset>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<!-- 输出日志到文件(异步) -->
|
||||
<appender name="ASYNC_FILE" class="ch.qos.logback.classic.AsyncAppender">
|
||||
<!-- 不丢失日志,默认:如果队列的 80% 已满,则会丢弃 TRACT、DEBUG、INFO 级别的日志 -->
|
||||
<discardingThreshold>0</discardingThreshold>
|
||||
<!-- 更改默认的队列的深度,该值会影响性能,默认:256 -->
|
||||
<queueSize>512</queueSize>
|
||||
<!-- 添加附加的 appender,最多只能添加一个 -->
|
||||
<appender-ref ref="FILE"/>
|
||||
</appender>
|
||||
|
||||
<!-- Snail Job Server -->
|
||||
<appender name="JOB_SERVER" class="com.aizuda.snailjob.server.common.appender.SnailJobServerLogbackAppender" />
|
||||
|
||||
<!-- 开发环境:只打印到控制台 -->
|
||||
<springProfile name="dev">
|
||||
<!-- 如果配置的日志等级,和 application.yml 中的日志等级配置重叠,application.yml 配置优先级高 -->
|
||||
<root level="INFO">
|
||||
<appender-ref ref="CONSOLE"/>
|
||||
<appender-ref ref="JOB_SERVER"/>
|
||||
</root>
|
||||
</springProfile>
|
||||
|
||||
<!-- 生产环境:打印到控制台并输出到文件 -->
|
||||
<springProfile name="prod">
|
||||
<root level="INFO">
|
||||
<appender-ref ref="CONSOLE_PROD"/>
|
||||
<appender-ref ref="ASYNC_FILE"/>
|
||||
<appender-ref ref="JOB_SERVER"/>
|
||||
</root>
|
||||
<!-- 日志保留天数(根据国家法律,网络运行状态、网络安全事件、个人敏感信息操作等相关记录,留存的日志不少于六个月,并且进行网络多机备份。) -->
|
||||
<property name="FILE_MAX_HISTORY" value="180"/>
|
||||
</springProfile>
|
||||
</configuration>
|
Reference in New Issue
Block a user