1 Star 6 Fork 1

Cookies / 定时任务管理器

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 5.51 KB
一键复制 编辑 原始数据 按行查看 历史
Cookies 提交于 2023-08-15 01:32 . update README.md.

数据交互管理器

介绍

定时运行api任务,winform项目,界面简洁,配置安装方便,比那些网页的方便快捷,无论小企业大企业,小项目大项目,均可以使用,直接丢到windows server服务器点开定时器即可跑任务,任务通过数据库插入数据的方式进行部署,对任务的接口进行定义,运行时间,路由线路等定义即可无人值守运行。日志有本地txt输出,可以钉钉机器人输出。企业可以依托钉钉机器人来做大型的日志输出地,使用钉钉自带的相关搜索检索功能,进行方便的日志管理。

- 配置完Setting.json无需重启软件,直接点击刷新配置即可生效(包括定时器时间timer),采用了实体通知的机制可以实现动态进行配置的变更。

软件架构

输入图片说明 输入图片说明

安装教程

注意:首次生成需要把Setting.json放入debug或者release文件夹。

输入图片说明 输入图片说明

  1. 需要创建一个任务管理表,可以使用项目目录下这个txt文件存储的语句快速建表,CreateDataBaseTabel.txt
  2. 需要配置项目下Setting.json文件
    • Setting.json结构说明:
    • session为数组,可以配置多个接口源,id为唯一标识,用来指认接口实体,path代表接口的主要路径。
    • dataBase下有两个属性,connect代表连接字符串,db代表一个枚举,
  •     MySql = 0,
  •     SqlServer = 1,
  •     Sqlite = 2,
  •     Oracle = 3,
  •     PostgreSQL = 4,
  •     Dm = 5,
  •     Kdbndp = 6,
  •     Oscar = 7,
  •     MySqlConnector = 8,
  •     Access = 9,
  •     OpenGauss = 10,
  •     QuestDB = 11,
  •     HG = 12,
  •     ClickHouse = 13,
  •     GBase = 14,
  •     Odbc = 15,
  •     OceanBaseForOracle = 16,
  •     TDengine = 17,
  •     GaussDB = 18,
  •     OceanBase = 19,
  •     Tidb = 20,
  • 输入要连接的数据库对应的枚举索引就可以了

    • timer为定时向数据获取job内容,以保持更新到视图为最新内容,单位为毫秒。
    • log为日志视图最大存储条数,如果超过这个数量,视图会入最新删最旧。
    • dingset下有三个属性,on代表启用日志输出到钉钉机器人,url代表钉钉机器人的链接,safecode代表钉钉机器人创建时所选的安全验证方式,目前仅支持关键词的验证。
  • Setting.json的钉钉配置,(目前仅支持自定义关键词的安全验证方式)

  • 输入图片说明

  • 输入图片说明

  1. 数据库jobcentre表内容说明
    1. JobCode为任务的具体名称,具体到api接口的一个/后面的所有内容。
    2. JobName为任务的简称,无实质性逻辑,方便浏览。
    3. JobSatatus为任务的状态,1为启用,0为禁用,方便任务管理。
    4. JobRunTime为任务的运行时间字符串:
      • 时间字符串规则
      • 0:00 用:分割,前面的代表时间类型,后面代表具体的value
      • 层级,列表0代表时,列表1代表分,列表2代表秒,列表3代表如果是之间类型,所要执行的时间
      • 时间类型代码,0-未启用,1-固定类型,2-循环类型,3-之间类型
      • 特殊说明。3-之间类型
      • 例:0:00,3:87,0:00,2:20
      • 此例为,在时间是早上8点到晚上7点之间,每20分钟循环执行
    5. JobDetail为任务的具体描述,无逻辑,方便预览。
    6. JobWeek为任务运行时间的延申,字符串有的星期枚举索引即为运行,没有即为该星期中的那一天不运行任务。
    7. JobRoute为任务的路由,主要格式为0:Job 其中:是必须的,0代表的是Setting.json配置的session列表的id。代表使用这个线路。:号后面的内容为更具体一些的路径,方便接口的扩展
    8. JobMode为任务的请求方式,主要是使用Get请求,使用Post请求也希望可以在接口那边预先定义一个预值。比如页数,日期

使用说明

  1. 如需启用定时器,需要在开启软件之后把右上角的定时器的checkbox选中即可启用根据时间字符串,星期字符串,来进行自动运行任务。
  2. 此管理器共有两个tab,第一个tab为任务,第二个tab主要是用于日志,文本输出的日志也内置,所有任务跑下来的返回结果均会在log日志中以日的单位体现。
  3. 任务页拥有右键菜单,可以根据需要使用

参与贡献

  1. 有啥疑问可以加我的q 2273595183。也可以提需求。
  2. 新建 Feat_xxx 分支
  3. 提交代码
  4. 新建 Pull Request

特技

  1. 使用 Readme_XXX.md 来支持不同的语言,例如 Readme_en.md, Readme_zh.md
  2. Gitee 官方博客 blog.gitee.com
  3. 你可以 https://gitee.com/explore 这个地址来了解 Gitee 上的优秀开源项目
  4. GVP 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目
  5. Gitee 官方提供的使用手册 https://gitee.com/help
  6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 https://gitee.com/gitee-stars/
C#
1
https://gitee.com/cookies_code/data-interaction-manager.git
git@gitee.com:cookies_code/data-interaction-manager.git
cookies_code
data-interaction-manager
定时任务管理器
master

搜索帮助