NorthStar Analytics 原始数据和聚合数据保留
原始数据日志会在 Elasticsearch 中保留用户可配置的天数。数据也每小时汇总(聚合),并保留用户可配置的天数。聚合的目的是在磁盘空间有限的情况下使更长的数据保留更加可行。修改这些保留参数时,请记住这对存储资源有影响。
存储的每小时聚合数据文件名使用以下格式:rollups-northstar-yyyy-mm-dd。
表 1 中描述的参数协同工作以控制数据保留和聚合行为。使用 NorthStar 控制器/计划器入门指南中的 NorthStar CLI 配置 NorthStar 设置 使用set northstar system scheduler tasks
命令层次结构访问所有这些参数。
参数 |
描述 |
---|---|
间隔(收集-清理) |
要进行修改,请使用 set northstar system scheduler tasks collection-cleanup interval 命令。 控制收集清理系统任务的运行频率(以表示为“d”或“天”的天数为单位)。示例:1 天、4 天。此任务执行 collector-utils.py 脚本来清理旧日志。默认值为一天 (1d)。若要禁用集合清理,请将值设置为 0d。 collector-utils.py 脚本在 NorthStar 服务器时间凌晨 1:00 左右运行。 collector-utils.py 脚本使用 Elasticsearch API 来清理“旧”数据,如下所示:
集合清理任务是从 NorthStar 服务器调用的。您可以通过导航到 Administration > Task Scheduler来查看(但不能修改)清理任务。 |
原始数据保留持续时间 |
要进行修改,请使用 set northstar system scheduler tasks collection-cleanup raw-data-retention-duration 命令。 定义以天数为单位的原始数据的“旧”日志。单位可以输入为“d”或“天”。默认值为 14 天(14 天或 14 天),这意味着原始数据日志在 Elasticsearch 中保留 14 天。若要禁用原始数据日志的保留,请将值设置为 0d。 |
汇总数据保留持续时间 |
要进行修改,请使用 set northstar system scheduler tasks collection-cleanup rollup-data-retention-duration 命令。 定义以天数表示的“旧”聚合数据。单位可以输入为“d”或“天”。默认值为 180 天(180 天或 180 天),这意味着每小时汇总的数据会在 Elasticsearch 中保留 180 天。若要禁用聚合数据的保留,请将值设置为 0d。 |
间隔(汇总) |
要进行修改,请使用 set northstar system scheduler tasks rollup interval 命令。
注意:
我们建议您 不要 更改此默认值,但禁用聚合除外。如果要禁用数据聚合,请将该值设置为 0h。 设置 ESRollup 系统任务的运行频率(以小时为单位)。单位可以输入为“h”或“小时”。ESRollup 系统任务执行 esrollup.py 脚本来聚合前一个间隔的数据。默认值为 1 小时(1 小时或 1 小时)。 esrollup.py 脚本使用 Elasticsearch API 来执行数据聚合。 ESRollup 任务是从 NorthStar 服务器调用的。您可以通过导航到 Administration > Task Scheduler来查看(但不能修改)汇总任务。 |
NorthStar REST API 使用 表 2 中所述的其他参数支持遥测数据聚合。有关详细信息,请参阅 NorthStar REST API 文档。
参数 |
描述 |
---|---|
禁用汇总查询 |
如果设置,则禁用每小时聚合数据的汇总查询功能。 |
rollup-query-cutoff-interval |
如果设置了,并且请求的时间范围从现在起大于汇总查询截止间隔,则查询将使用汇总索引搜索数据。 |
为了举例说明聚合参数如何协同工作,假设您设置了以下内容:
collection-cleanup interval=7d raw-data-retention-duration=30d rollup-data-retention-duration=800d
在此示例中,超过 30 天的原始数据日志和超过 800 天的每小时聚合数据日志设置为每 7 天清除一次。
汇总任务中包含的数据(聚合类型、字段和计数器)在位于 /opt/northstar/utils 目录中的仅查看esrollup_config.json文件中定义。
要查看启动 esrollup.py 和 collector-utils.py 脚本的系统任务,请在 NorthStar Web UI 中导航到 Administration > Task Scheduler 。在“任务”列表中,“名称”列指示“收集清理”或“ESRollup 任务”。在“类型”列中,它们被指定为“执行脚本”。 图 1 显示了一个示例。

任务列表中有一个可选列,指示每个任务是否为系统任务。将鼠标悬停在任何列标题上,单击出现的向下箭头,然后突出显示 Columns 以显示可用列的列表。单击“系统任务”复选框以选择要包含在显示中的“系统任务”列(真/假)。
选择系统任务时,窗口底部会显示“摘要”、“状态”和“历史记录”选项卡。