@@ -26,6 +25,7 @@
+当前最新版本: **1.2.0-beta**
github: https://github.com/lijiahangmax/orion-ops
gitee: https://gitee.com/lijiahangmax/orion-ops
csdn: https://blog.csdn.net/qq_41011894
@@ -39,9 +39,10 @@ demo: http://101.43.254.243/ops/#/
## 特性
-* 易用方便: 极简配置, 开箱即用, 无 Agent 接入
+* 易用方便: 极简配置, 开箱即用, 支持 docker 部署
* 在线终端: 支持在线 Web 终端, 记录操作日志, 管理员可强制下线, 录屏回放, 终端监视等
* 文件管理: 支持远程机器文件批量上传、批量下载、暂停断点续传、实时传输速率、实时进度、打包传输等功能
+* 机器监控: 支持维护机器的监控以及报警, 支持采集 agent 的一键安装以及升级
* 批量操作: 支持远程机器批量执行命令 以及 批量执行上传文件
* 调度任务: 维护 cron 表达式, 定时执行机器命令
* 环境隔离: 不同应用环境的配置及环境变量是相互隔离的
@@ -92,6 +93,12 @@ roadmap: https://lijiahangmax.gitee.io/orion-ops/#/about/roadmap


+> 机器监控
+
+
+
+
+
> 批量执行

diff --git a/docs/README.md b/docs/README.md
index 15913818..f2cf9dbe 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -1,7 +1,6 @@
## orion-ops 是什么
-`orion-ops` 一站式自动化运维及自动化部署平台, 无 Agent 的方式接入应用, 使用多环境的概念, 提供了机器管理、Web终端、WebSftp、机器批量执行、机器批量上传、在线查看日志、定时调度任务、应用环境维护、应用构建及发布任务、操作流水线等功能, 帮助企业实现一站式轻量化运维治理,
-致力于企业级应用的智能运维。
+`orion-ops` 一站式自动化运维及自动化部署平台, 使用多环境的概念, 提供了机器管理、机器监控报警、Web终端、WebSftp、机器批量执行、机器批量上传、在线查看日志、定时调度任务、应用环境维护、应用构建及发布任务、操作流水线等功能, 帮助企业实现一站式轻量化运维治理, 致力于企业级应用的智能运维。
@@ -26,6 +25,7 @@
+当前最新版本: **1.2.0-beta**
github: https://github.com/lijiahangmax/orion-ops
gitee: https://gitee.com/lijiahangmax/orion-ops
csdn: https://blog.csdn.net/qq_41011894
@@ -39,9 +39,10 @@ demo: http://101.43.254.243/ops/#/
## 特性
-* 易用方便: 极简配置, 开箱即用, 无 Agent 接入
+* 易用方便: 极简配置, 开箱即用, 支持 docker 部署
* 在线终端: 支持在线 Web 终端, 记录操作日志, 管理员可强制下线, 录屏回放, 终端监视等
* 文件管理: 支持远程机器文件批量上传、批量下载、暂停断点续传、实时传输速率、实时进度、打包传输等功能
+* 机器监控: 支持维护机器的监控以及报警, 支持采集 agent 的一键安装以及升级
* 批量操作: 支持远程机器批量执行命令 以及 批量执行上传文件
* 调度任务: 维护 cron 表达式, 定时执行机器命令
* 环境隔离: 不同应用环境的配置及环境变量是相互隔离的
@@ -92,6 +93,12 @@ roadmap: https://lijiahangmax.gitee.io/orion-ops/#/about/roadmap


+> 机器监控
+
+
+
+
+
> 批量执行

diff --git a/docs/_sidebar.md b/docs/_sidebar.md
index 10fd232b..0d6a1bcd 100644
--- a/docs/_sidebar.md
+++ b/docs/_sidebar.md
@@ -16,6 +16,7 @@
* [应用管理](operator/app.md)
* [构建发布](operator/build-release.md)
* [用户管理](operator/user.md)
+ * [信息管理](operator/content.md)
* [系统管理](operator/system.md)
* 进阶指南
diff --git a/docs/about/change-log.md b/docs/about/change-log.md
index 5cb81501..e0fd078f 100644
--- a/docs/about/change-log.md
+++ b/docs/about/change-log.md
@@ -1,3 +1,17 @@
+## 1.2.0-beta
+
+`2022-09-03` `preview`
+
+🌈 添加 机器监控功能 [agent仓库](/) [如何使用](/)
+🌈 添加 机器报警配置功能 (目前仅支持钉钉机器人推送)
+🌈 添加 webhook功能维护 (目前仅支持机器报警维护)
+🌈 添加 报警组功能维护
+🔨 对后端代码结构进行升级, 后端包从 `orion-ops-service` 修改为 `orion-ops-api`
+🐞 修复 下载宿主机文件会被错误删除的问题 **尽快升级** ❗
+🐞 修改部分样式
+
+[如何升级](/about/update.md?id=_120-beta)
+
## 1.1.5
`2022-07-31` `release`
diff --git a/docs/about/code-structure.md b/docs/about/code-structure.md
index aacf2882..7e2078a9 100644
--- a/docs/about/code-structure.md
+++ b/docs/about/code-structure.md
@@ -60,36 +60,83 @@ enum.js 中对象必须为蛇形命名法且都是大写字母 如: `BUILD_STATU
### 后端代码结构
```code
-java com.orion.ops
- ├── annotation 自定义注解
- ├── config 配置包
- ├── constant 常量包 根据不同的业务划分不同的子包, 通常存放枚举以及常量
- ├── controller contorller 层
- ├── dao dao 层
- ├── entity
- │ ├─ domain 数据库实体 其中的类需要与数据库字段一一对应 不允许多字段
- │ ├─ dto 业务实体 用于业务对象 如: redis 的 json 实体, 数据导入实体
- │ ├─ request 请求实体 用于前端请求参数
- │ └─ vo 展示实体 用于前端响应展示
- ├── handler 复杂业务逻辑包 如: 用于构建, 用于发布
- ├── interceptor 拦截器配置包
- ├── runner 系统启动 runner 配置, 如: 自动修改状态, 加载转换器, 清除 redis 无效 key
- ├── service
- │ ├─ api 应用服务接口定义
- │ └─ impl 业务服务接口实现
- ├── task
- │ ├─ fixed 固定定时任务 如: 数据统计
- │ └─ impl 自定义定时任务 如: 调度任务, 定时发布
- └── utils 工具包
-
-resources
- ├── config 配置文件目录
- ├── mapper mybatis mapper 文件存放目录
- ├── menu 菜单 json 文件存放目录
- ├── static 静态文件存储目录
- └── templates
- ├─ import 导入模板目录
- └─ push 推送模板目录
+orion-ops-common 公共模块
+ └── java com.orion.ops
+ ├── annotation 自定义注解包
+ ├── constant 常量包 根据不同的业务划分不同的子包, 通常存放枚举以及常量
+ └── utils 通用工具包
+
+orion-ops-dao dao 层模块
+ ├── java com.orion.ops
+ │ ├── dao dao 层接口
+ │ ├── entity
+ │ │ ├── domain 数据库实体 其中的类需要与数据库字段一一对应 不允许多字段
+ │ │ ├── dto 复杂查询对象 查询返回
+ │ │ └── query 复杂查询对象 查询入参
+ │ └── utils dao 层工具包, 代码生成器, 数据查询器
+ │
+ └── resources
+ ├── config 配置文件目录
+ └── mapper mybatis mapper 文件存放目录
+
+orion-ops-export 导入导出模块
+ ├── java com.orion.ops
+ │ ├── constant 导入导出常量包
+ │ ├── entity
+ │ │ ├── exporter 导出对象解析实体包
+ │ │ └── importer 导入对象解析实体包
+ │ ├── service
+ │ │ ├── api 导入导出服务接口定义
+ │ │ └── impl 导入导出服务接口实现
+ │ └── validator 导入对象数据验证器
+ │
+ └── resources
+ └── templates
+ └── import 导入模板目录
+
+orion-ops-mapping 数据映射模块
+ └── java com.orion.ops
+ └── mapping 数据映射包 根据不同的业务划分不同的子包
+
+orion-ops-model 实体对象模块
+ └── java com.orion.ops
+ └── entity
+ ├── config 配置实体 用于业务中的配置对象
+ ├── dto 业务实体 用于业务对象 如: redis 的 json 实体
+ ├── request 请求实体 用于前端请求参数
+ └── vo 展示实体 用于前端响应展示
+
+orion-ops-runner 启动加载模块
+ └── java com.orion.ops
+ └── runner 系统启动 runner 配置, 如: 自动修改状态, 加载转换器, 清除 redis 无效 key
+
+orion-ops-service 服务实现模块
+ ├── java com.orion.ops
+ │ ├── config 服务配置包
+ │ ├── handler 复杂业务逻辑包 如: 用于构建, 用于发布
+ │ ├── interceptor 拦截器配置包
+ │ ├── service
+ │ │ ├── api 应用服务接口定义
+ │ │ └── impl 业务服务接口实现
+ │ ├── task
+ │ │ ├── fixed 固定定时任务 如: 数据统计
+ │ │ └── impl 自定义定时任务 如: 调度任务, 定时发布
+ │ └── utils 业务工具类
+ │
+ └── resources
+ └── templates
+ ├── push 推送模板目录, 根据不同的类型拆分子包
+ └── script 脚本模板目录
+
+orion-ops-web restful api模块
+ ├── java com.orion.ops
+ │ ├── config web 配置包
+ │ ├── controller orion-ops-vue 接口包
+ │ └── expose 对外暴露服务接口包
+ │
+ └── resources
+ ├── config 配置文件目录
+ └── menu 菜单文件存放目录
```
### 后端代码规范
@@ -123,7 +170,11 @@ controller 禁止使用 map 传参
分页的请求对象必须继承 PageRequest
分页的响应类型必须为 DataGrid
+每个表必须存在四个字段 id[bigint] deleted[tinyint] create_time[datetime(4)] update_time[datetime(4)]
+DO 对象必须和数据库结构一一对应
+复杂查询必要时需要创建 Query 以及 DTO 对象
查询善用 DataQuery
+CodeGenerator 为代码生成器
参数校验需要使用 utils.Valid 方法
抛出异常需要用到 Exceptions 方法, 不要 new
@@ -135,8 +186,6 @@ DAO DTO DO VO 对象的定义 后缀必须为纯大写
代码必须要有注释
如果字段是一个枚举时 需要使用 @see 枚举
-CodeGenerator 为代码生成器
-可以不用写单元测试
禁止使用 @Autowire 注入 bean, 只能使用 @Resource 注入
@RestWrapper 为自定义注解, 自动返回 HttpWrapper
diff --git a/docs/about/roadmap.md b/docs/about/roadmap.md
index 10fae7f5..145f32ae 100644
--- a/docs/about/roadmap.md
+++ b/docs/about/roadmap.md
@@ -7,10 +7,12 @@
* 锁定用户
* 操作日志
* 登陆日志
+* 报警组维护
#### 机器模块 💻
* 环境变量配置
+* 机器监控
* 机器代理
* 秘钥管理
* web终端
@@ -28,10 +30,11 @@
* 调度任务自动恢复
* 调度任务统计
-#### 信息管理 📑
+#### 内容管理 📑
* 模板配置
* 日志管理
+* webhook维护
* 环境变量历史记录
#### 应用中心 🚀
@@ -68,18 +71,18 @@
## 开发中 ⏱
-* 机器监控 (agent 端已完成)
-* webhook维护
-* 报警维护
-* 报警组维护
-* 推送维护
+* 机器独立秘钥
+* 重构导出
+* 优化站内信
## 未开始 ⏳
+* 增加更多推送方式(微信 飞书...)
+* 应用监控
+* 机器跳板机
* 命令过滤功能
* 机器分组功能
* 环境资源配置功能
-* 批量安装监控 agent
* webhook 触发构建发布流水线
* pipeline 相同仓库只用一次checkout
* 命令执行添加 groovy 脚本支持选项
diff --git a/docs/about/update.md b/docs/about/update.md
index 22e90c93..5aa75fc1 100644
--- a/docs/about/update.md
+++ b/docs/about/update.md
@@ -1,5 +1,111 @@
⚡ 注意: 应用不支持跨版本升级, 可以进行多次升级
+## 1.2.0-beta
+
+> sql 脚本
+
+```sql
+CREATE TABLE `machine_monitor` (
+ `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'id',
+ `machine_id` bigint DEFAULT NULL COMMENT '机器id',
+ `monitor_status` tinyint DEFAULT '1' COMMENT '监控状态 1未启动 2启动中 3运行中',
+ `monitor_url` varchar(512) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '请求 api url',
+ `access_token` varchar(512) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '请求 api accessToken',
+ `agent_version` varchar(16) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '插件版本',
+ `deleted` tinyint DEFAULT '1' COMMENT '是否删除 1未删除 2已删除',
+ `create_time` datetime(4) DEFAULT CURRENT_TIMESTAMP(4) COMMENT '创建时间',
+ `update_time` datetime(4) DEFAULT CURRENT_TIMESTAMP(4) ON UPDATE CURRENT_TIMESTAMP(4) COMMENT '修改时间',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='机器监控配置表';
+
+CREATE TABLE `webhook_config` (
+ `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'id',
+ `webhook_name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '名称',
+ `webhook_url` varchar(2048) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 'url',
+ `webhook_type` int DEFAULT NULL COMMENT '类型 10: 钉钉机器人',
+ `webhook_config` varchar(2048) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '配置项 json',
+ `deleted` tinyint DEFAULT '1' COMMENT '是否删除 1未删除 2已删除',
+ `create_time` datetime(4) DEFAULT CURRENT_TIMESTAMP(4) COMMENT '创建时间',
+ `update_time` datetime(4) DEFAULT CURRENT_TIMESTAMP(4) ON UPDATE CURRENT_TIMESTAMP(4) COMMENT '更新时间',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='webhook 配置';
+
+CREATE TABLE `alarm_group` (
+ `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'id',
+ `group_name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '报警组名称',
+ `group_description` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '报警组描述',
+ `deleted` tinyint DEFAULT '1' COMMENT '是否删除 1未删除 2已删除',
+ `create_time` datetime(4) DEFAULT CURRENT_TIMESTAMP(4) COMMENT '创建时间',
+ `update_time` datetime(4) DEFAULT CURRENT_TIMESTAMP(4) ON UPDATE CURRENT_TIMESTAMP(4) COMMENT '修改时间',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='报警组';
+
+CREATE TABLE `alarm_group_user` (
+ `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'id',
+ `group_id` bigint DEFAULT NULL COMMENT '报警组id',
+ `user_id` bigint DEFAULT NULL COMMENT '报警组成员id',
+ `username` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '报警组成员用户名',
+ `deleted` tinyint DEFAULT '1' COMMENT '是否删除 1未删除 2已删除',
+ `create_time` datetime(4) DEFAULT CURRENT_TIMESTAMP(4) COMMENT '创建时间',
+ `update_time` datetime(4) DEFAULT CURRENT_TIMESTAMP(4) ON UPDATE CURRENT_TIMESTAMP(4) COMMENT '修改时间',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `group_id_idx` (`group_id`,`user_id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='报警组成员';
+
+CREATE TABLE `alarm_group_notify` (
+ `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'id',
+ `group_id` bigint DEFAULT NULL COMMENT '报警组id',
+ `notify_id` bigint DEFAULT NULL COMMENT '通知id',
+ `notify_type` int DEFAULT NULL COMMENT '通知类型 10 webhook',
+ `deleted` tinyint DEFAULT '1' COMMENT '是否删除 1未删除 2已删除',
+ `create_time` datetime(4) DEFAULT CURRENT_TIMESTAMP(4) COMMENT '创建时间',
+ `update_time` datetime(4) DEFAULT CURRENT_TIMESTAMP(4) ON UPDATE CURRENT_TIMESTAMP(4) COMMENT '修改时间',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `group_idx` (`group_id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='报警组通知方式';
+
+CREATE TABLE `machine_alarm_config` (
+ `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'id',
+ `machine_id` bigint DEFAULT NULL COMMENT '机器id',
+ `alarm_type` int DEFAULT NULL COMMENT '报警类型 10: cpu使用率 20: 内存使用率',
+ `alarm_threshold` double DEFAULT NULL COMMENT '报警阈值',
+ `trigger_threshold` int DEFAULT NULL COMMENT '触发报警阈值 次',
+ `notify_silence` int DEFAULT NULL COMMENT '报警通知沉默时间 分',
+ `deleted` tinyint DEFAULT '1' COMMENT '是否删除 1未删除 2已删除',
+ `create_time` datetime(4) DEFAULT CURRENT_TIMESTAMP(4) COMMENT '创建时间',
+ `update_time` datetime(4) DEFAULT CURRENT_TIMESTAMP(4) ON UPDATE CURRENT_TIMESTAMP(4) COMMENT '修改时间',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `machine_idx` (`machine_id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='机器报警配置';
+
+CREATE TABLE `machine_alarm_group` (
+ `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'id',
+ `machine_id` bigint DEFAULT NULL COMMENT '机器id',
+ `group_id` bigint DEFAULT NULL COMMENT ' 报警组id',
+ `deleted` tinyint DEFAULT '1' COMMENT '是否删除 1未删除 2已删除',
+ `create_time` datetime(4) DEFAULT CURRENT_TIMESTAMP(4) COMMENT '创建时间',
+ `update_time` datetime(4) DEFAULT CURRENT_TIMESTAMP(4) ON UPDATE CURRENT_TIMESTAMP(4) COMMENT '修改时间',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `config_idx` (`machine_id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='机器报警通知组';
+
+CREATE TABLE `machine_alarm_history` (
+ `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'id',
+ `machine_id` bigint DEFAULT NULL COMMENT '机器id',
+ `alarm_type` int DEFAULT NULL COMMENT '报警类型 10: cpu使用率 20: 内存使用率',
+ `alarm_value` double DEFAULT NULL COMMENT '报警值',
+ `alarm_time` datetime(4) DEFAULT NULL COMMENT '报警时间',
+ `deleted` tinyint DEFAULT '1' COMMENT '是否删除 1未删除 2已删除',
+ `create_time` datetime(4) DEFAULT CURRENT_TIMESTAMP(4) COMMENT '创建时间',
+ `update_time` datetime(4) DEFAULT CURRENT_TIMESTAMP(4) ON UPDATE CURRENT_TIMESTAMP(4) COMMENT '修改时间',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `machine_idx` (`machine_id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='机器报警历史';
+
+ALTER TABLE `machine_terminal_log`
+CHANGE COLUMN `operate_log_file` `screen_path` varchar(512) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '录屏文件路径' AFTER `close_code`;
+```
+
## 1.1.4
> 应用发布配置
diff --git a/docs/advance/second-dev.md b/docs/advance/second-dev.md
index 4223d34a..5dccab01 100644
--- a/docs/advance/second-dev.md
+++ b/docs/advance/second-dev.md
@@ -23,17 +23,17 @@
2. 初始化数据库
```
# 执行DDL脚本
- orion-ops/orion-ops-service/init-schema.sql
+ orion-ops/sql/init-schema.sql
# 执行默认数据脚本 [默认用户, 默认应用环境, 常用命令模板] (可选)
- orion-ops/orion-ops-service/init-data.sql
+ orion-ops/sql/init-data.sql
```
3. 修改后端配置
```
# 修改配置文件
- orion-ops/orion-ops-service/src/main/resources/application-dev.properties
+ orion-ops/orion-ops-api/orion-ops-web/src/main/resources/application-dev.properties
# 修改全局加密秘钥, 为了密码安全考虑 (推荐修改)
- orion-ops/orion-ops-service/src/main/resources/application.properties value.mix.secret.key
+ orion-ops/orion-ops-api/orion-ops-web/src/main/resources/application.properties value.mix.secret.key
```
4. 修改前端配置
diff --git a/docs/assert/img/machine_monitor_alarm_ding.png b/docs/assert/img/machine_monitor_alarm_ding.png
new file mode 100644
index 00000000..9235ca9a
Binary files /dev/null and b/docs/assert/img/machine_monitor_alarm_ding.png differ
diff --git a/docs/assert/img/machine_monitor_summary.png b/docs/assert/img/machine_monitor_summary.png
new file mode 100644
index 00000000..eb735cc7
Binary files /dev/null and b/docs/assert/img/machine_monitor_summary.png differ
diff --git a/docs/assert/img/machine_monitor_view.png b/docs/assert/img/machine_monitor_view.png
new file mode 100644
index 00000000..9f7d09fd
Binary files /dev/null and b/docs/assert/img/machine_monitor_view.png differ
diff --git a/docs/docs-serve.cmd b/docs/docs-serve.cmd
index ced9f402..6c3ad0a1 100644
--- a/docs/docs-serve.cmd
+++ b/docs/docs-serve.cmd
@@ -1,2 +1,2 @@
start "" "C:\Program Files\Google\Chrome\Application\chrome.exe" "http://localhost:3000/"
-docsify serve A:\Work\idea_project\orion\orion-ops\docs
+docsify serve ./
diff --git a/docs/how-use.md b/docs/how-use.md
new file mode 100644
index 00000000..9ecb87f9
--- /dev/null
+++ b/docs/how-use.md
@@ -0,0 +1,10 @@
+### 如何使用
+
+1. 安装 node
+2. 安装 docsify-cli
+ ```npm i docsify-cli -g```
+3. 在 doc 目录执行命令
+ ```docsify serve ./```
+4. 在浏览器访问 http://localhost:3000
+5. 官方文档 https://docsify.js.org/#/?id=docsify
+
diff --git a/docs/operator/content.md b/docs/operator/content.md
new file mode 100644
index 00000000..10168ed6
--- /dev/null
+++ b/docs/operator/content.md
@@ -0,0 +1,7 @@
+### 模板管理
+
+维护命令模板。 在 `批量执行` `调度任务` `应用配置` 可以直接选择使用。
+
+### webhook 配置
+
+维护 webhook url。在报警联系组设置中选择使用, 暂时仅支持维护钉钉机器人通知。
diff --git a/docs/operator/machine.md b/docs/operator/machine.md
index bd75753c..77159639 100644
--- a/docs/operator/machine.md
+++ b/docs/operator/machine.md
@@ -6,6 +6,19 @@
⚡ 按住 `Ctrl` 点击 `Terminal` 可以打开一个新页面, 否则将会打开一个模态框。
⚡ 按住 `Ctrl` 点击 `sftp` 可以打开一个新页面, 否则将会在当前页面跳转。
+### 机器监控
+
+配置已启动的机器监控, 具有可视化图形以及数据粒度和时间区间的选择
+统计的指标有 `CPU监控` `内存监控` `网络带宽监控` `硬盘使用监控`
+
+* 安装: 批量安装本页机器的监控插件
+* 升级: 批量升级本页机器的监控插件
+* 检测: 批量检测本页机器的监控状态
+* 监控: 进入机器监控页面
+* 插件配置: 配置监控插件的地址和请求头
+* 报警配置: 配置机器监控的报警类型以及报警联系组
+* 报警历史: 查看当前机器的报警历史
+
### 环境变量
配置机器环境变量, 这个环境变量并不会设置到远程机器内, 而是运行命令时动态替换命令内容。
diff --git a/docs/operator/system.md b/docs/operator/system.md
index e91e4326..3627b404 100644
--- a/docs/operator/system.md
+++ b/docs/operator/system.md
@@ -1,7 +1,3 @@
-### 模板管理
-
-维护命令模板。 在 `批量执行` `调度任务` `应用配置` 可以直接选择使用。
-
### 系统变量
配置以及维护系统环境变量。
diff --git a/docs/operator/user.md b/docs/operator/user.md
index 5731feea..fa1ef91e 100644
--- a/docs/operator/user.md
+++ b/docs/operator/user.md
@@ -2,11 +2,19 @@
系统用户列表。
-* 日志: 查看操作日志
+* 日志: 查看用户操作日志
* 解锁: 管理员按钮, 解锁已锁定的用户
* 禁用: 管理员按钮, 禁用用户使该用户无法登陆
+* 删除: 管理员按钮, 删除该用户, 同时删除关联关系
* 重置密码: 管理员按钮, 重置用户密码
+### 报警联系组
+
+维护报警联系组, 配置后可在机器监控中设置报警通知组。
+
+* 修改: 修改当前报警组信息
+* 删除: 删除当前报警组, 同时删除关联关系
+
### 个人信息
可以修改当前用户的基本信息、用户操作日志, 以及查询站内信。
diff --git a/docs/quickstart/docker-install.md b/docs/quickstart/docker-install.md
index da97557d..ce853c28 100644
--- a/docs/quickstart/docker-install.md
+++ b/docs/quickstart/docker-install.md
@@ -19,9 +19,9 @@
2. 构建后端代码
```
# 修改全局加密秘钥, 为了密码安全考虑 (推荐修改)
- orion-ops/orion-ops-service/src/main/resources/application.properties value.mix.secret.key
+ orion-ops/orion-ops-api/orion-ops-web/src/main/resources/application.properties value.mix.secret.key
# 进入代码目录
- cd orion-ops/orion-ops-service
+ cd orion-ops/orion-ops-api
# 编译
mvn -U clean install -DskipTests
```
diff --git a/docs/quickstart/faq.md b/docs/quickstart/faq.md
index 22c17455..35ce7006 100644
--- a/docs/quickstart/faq.md
+++ b/docs/quickstart/faq.md
@@ -10,7 +10,7 @@
重启后端服务 添加启动参数 `--reset-admin` 会将 `orionadmin` 的密码重置为 `orionadmin`
```
-nohup java -jar orion-ops-service-1.0.0.jar --spring.profiles.active=prod --reset-admin &
+nohup java -jar orion-ops-web-1.2.0-beta.jar --spring.profiles.active=prod --reset-admin &
```
@@ -20,7 +20,7 @@ nohup java -jar orion-ops-service-1.0.0.jar --spring.profiles.active=prod --rese
重启后端服务 添加启动参数 `--disable-ip-filter` 会将禁用ip过滤器
```
-nohup java -jar orion-ops-service-1.0.0.jar --spring.profiles.active=prod --disable-ip-filter &
+nohup java -jar orion-ops-web-1.2.0-beta.jar --spring.profiles.active=prod --disable-ip-filter &
```
@@ -111,11 +111,14 @@ server {
同理, 在命令的最后一行设置 `exit 1` 结果将会是失败, 可以用此来中断后续流程
-> ##### 17. docker 运行 orion-ops-service 失败提示 `sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1264)`
+> ##### 17. 添加机器全局密钥时提示添加失败
+
+生成秘钥时可以指定密钥 -m PEM
+
+```shell
+ssh-keygen -t rsa -m PEM
+```
-`1.1.4` 版本之前可能会出现此问题, 之后换成了配置文件中的默认头像
-原因是用户创建时会生成默认的头像, 依赖于 `awt` 绘制
-启动时需要添加 `RUN apk add --update ttf-dejavu fontconfig`
> ##### 18. 应用发布中选择 SCP 作为传输方式, 为什么还需要手动输入密码?
diff --git a/docs/quickstart/install.md b/docs/quickstart/install.md
index b91c7770..528d8640 100644
--- a/docs/quickstart/install.md
+++ b/docs/quickstart/install.md
@@ -23,19 +23,19 @@
2. 初始化数据库
```
# 执行DDL脚本
- orion-ops/orion-ops-service/init-schema.sql
+ orion-ops/sql/init-schema.sql
# 执行默认数据脚本 [默认用户, 默认应用环境, 常用命令模板] (可选)
- orion-ops/orion-ops-service/init-data.sql
+ orion-ops/sql/init-data.sql
```
3. 构建后端代码
```
# 修改配置文件 (mysql, redis)
- orion-ops/orion-ops-service/src/main/resources/application-prod.properties
+ orion-ops/orion-ops-api/orion-ops-web/src/main/resources/application-prod.properties
# 修改全局加密秘钥, 为了密码安全考虑 (推荐修改)
- orion-ops/orion-ops-service/src/main/resources/application.properties value.mix.secret.key
+ orion-ops/orion-ops-api/orion-ops-web/src/main/resources/application.properties value.mix.secret.key
# 进入代码目录
- cd orion-ops/orion-ops-service
+ cd orion-ops/orion-ops-api
# 编译
mvn -U clean install -DskipTests
```
@@ -106,9 +106,9 @@ server {
```
复制 orion-ops/orion-ops-vue/dist/index.html 到 /usr/share/nginx/html
复制 orion-ops/orion-ops-vue/dist 到 /usr/share/nginx/html 并且重命名为 ops
-复制 orion-ops/orion-ops-service/target/orion-ops-service-1.1.4.jar 到 /data/orion
+复制 orion-ops/orion-ops-api/orion-ops-api/target/orion-ops-web-1.2.0-beta.jar 到 /data/orion
# 启动后台服务
-nohup java -jar orion-ops-service-1.1.4.jar --spring.profiles.active=prod --generator-admin &
+nohup java -jar orion-ops-web-1.2.0-beta.jar --spring.profiles.active=prod --generator-admin &
# 启动 nginx
service nginx start
```