赵红梅
- 一、 如何自动清除系统消息
前景:在 Build Forge 服务运行期间,会有大量的系统消息产生,消息会详细记录 Build Forge 的日志信息,例如用户登录、项目运行、服务器刷新清单等等,通过系统消息页面(管理 → 消息)您可以查看的系统和用户操作的日志,Build Forge缺省的系统配置保留各类系统消息120天以上甚至永久保存,会导致大量的系统消息信息产生,进入到消息页面的速度就会很慢,那么就需要定期清除多余的系统消息信息。
- 1. 清除系统消息:Build Forge 清除系统消息是通过系统配置设置来完成的。
- 1) 展开管理 → 系统,将会有很多系统配置项被罗列出来,其中"自动清除信息日志天数"、"自动清除审计日志天数"、"自动清除警告日志天数"和"自动清除错误日志天数"配置项与清除系统消息有关,为了方便起见,在过滤器文本框中输入"日志天数",就会将这4个系统配置项单独显示出来。
- 2) 这些值设置每种类别的日志条目保留在审计日志中的最大天数;较旧的条目将自动删除。如果值为 0,系统将永不删除该类别的日志条目。
缺省值列表:
系统配置项 |
缺省值(天数) |
自动清除信息日志天数 |
120 |
自动清除审计日志天数 |
365 |
自动清除警告日志天数 |
120 |
自动清除错误日志天数 |
0 |
- 3) 根据具体的需求,就可以配置相应的设置,例如:"自动清除信息日志天数" 设置为 20天,那么点击"自动清除信息日志天数",在下面的编辑栏目里,输入 20,点击"保存"按钮即可。那么超过20天的信息日志就会自动删除。
- 二、 如何清除作业信息
背景:在 Build Forge 运行项目后,会产生作业信息,那么日积月累的作业信息,也会占用很多磁盘空间,那么我们可以利用 Build Forge 的类机制来按需求来清除不再需要的作业信息。每个项目在创建时,都要归属于某个类,每个作业必须且只能是一个类的成员。类用于管理活动的属性有2个:自动删除作业;在系统清除此类的作业时,或者在现有作业更改为此类或从此类更改为其它类时启动作业。
- 1. 选择 项目 → 类,就可以编辑类的属性或者创建新的类。
类的属性列表:
属性 |
选项 |
选项值列表 |
性能 |
类的删除属性 |
删除文件 |
所有内容 |
从数据库删除作业的所有相关信息,并从运行该作业的服务器删除作业目录。 |
控制台数据 |
从数据库删除作业的所有相关信息,但原封不动地将作业目录保留在服务器上。 | ||
日志与文件 |
删除作业目录和日志,但保留 作业 → 已归档 页面上的步骤通过/失败信息。 | ||
仅日志 |
仅删除作业日志。 | ||
仅文件 |
删除运行作业的服务器上的作业目录。日志和某些其它信息(例如,步骤通过/失败状态)仍然保留在数据库中;作业记录则移至 作业 → 已归档 页面。 | ||
天 |
始终,1-45 |
作业被删除前必须经过的天数。 | |
计数 |
无限制,1-45 |
允许的作业数上限。当作业数超出"计数"值时,系统将调度清除作业来删除多余的构建。缺省值 "无限制"防止系统因存在的作业数删除作业。 | |
哪一个 (删除作业前必须满足的附加条件) |
所有构建 |
选择此选项时,"哪个"属性对作业删除无效。 | |
仅已失败 |
系统只删除失败的作业。 | ||
仅已通过 |
系统只删除通过的作业。 | ||
保持 1 次通过 |
系统始终保留最近通过的作业,即便它满足其它删除条件。 | ||
在发生类事件时启动项目 |
在清除时启动 |
在清除时启动
|
该属性在类中的任何作业被清除时(也即,每当系统对具有该类的作业启动清除作业时),启动指定的项目。您可以使用该属性来确保删除一些不会随清除自动删除的特定文件。 |
在进入时启动 |
在进入时启动 |
该属性在作业的类属性更改为该类时启动指定的项目。您可以使用该属性将某个进程关联到作业重新分类;例如,您可以创建一个 Test 类,并在作业提升为 Test 类时启动一些标准测试。 | |
在退出时启动 |
在退出 时启动
|
在退出时启动该属性在作业的类属性从该类更改为其它类时启动指定的项目。 |
- 2. 根据上面列表,举一个删除作业的例子,假设我们要删除一个超过3 天或者作业数超过5个作业的所有内容。
- 1) 点击"添加类"按钮,输入下列值:(其它值取缺省值),点击"保存"按钮
- Ø 名称:testclass
- Ø 天:3
- Ø 计数:5
- 2) 在修改或创建一个项目,将"类"设置为 testclass,点击保存项目,那么在多次运行此项目后,在满足删除条件的情况下,就会删除相应的更旧的符合删除条件的作业信息,保持此项目的作业信息,即不满足超过3天又不满足超过5个作业。
- 3. 使用调度来实现作业清除,缺省情况下,系统将按照由"清除检查时间"系统设置设定的时间间隔(缺省为每 15 分钟,可以修改为其它的期望值)来检查应清除的作业(基于定义自动删除规则的类属性)。这一行为可能导致与常规作业争用系统资源,那么我们可以该日程表激活时将仅检查要清除的作业。
- 1) 选择调度,就可以创建调度,利用这个调度去删除与之关联的类的作业信息。
调度参数:
字段 |
描述 |
范围 |
分钟 |
分钟数 |
0-59 |
小时 |
一天中的某小时 |
0-23 |
日期(一月中的某一天) |
某月中的某一天 |
1-31 |
月份 |
一年中的某月 |
1-12 |
天(星期几) |
星期几(星期天 = 0) |
0-6 |
- 2) 举一个例子:
- a) 每个工作日(周末除外)每半小时运行删除与 testclass 相关联的作业信息,需要输入下列信息
描述:调度1
类:testclass
分钟:*/30
小时:*
日期:*
月份:*
天:1-5
注:
- Ø 使用星号(*)表示范围内的所有有效值。星号可以后跟正斜杠(/)和步长值。 例如,"小时"字段中的 */2 值表示每 2 小时执行一次作业。
- Ø 使用由连字符分隔的数字范围。例如,"小时"字段中的 8-11 即指定在 8、9、10 和 11 点执行。范围可以后跟正斜杠(/)和步长值。例如,"小时"字段中的 0-23/2 表示每隔一小时执行一次作业。
- Ø 使用由逗号分隔一组数字(或范围)的逗号分隔列表。例如,1, 2, 3-5, 8。