跳转到内容

Custom Console ​

Custom Console 是 ASP 定制开发的运行时观察和校验页面,用于确认当前环境中 Module、Playbook 和 SIEM YAML 是否被正确加载。它不替代代码编辑器,也不负责在线创建复杂定义;创建和修改仍建议通过代码仓库、Harness Agent 或对应 Skills 完成。

如果想了解源码仓库中的 Mock 数据、SIEM YAML、Module 和 Playbook 示例如何配合运行,可以先阅读 Custom Examples。

入口 ​

Custom Console 位于左侧导航栏的 Custom,只有管理员可以访问。

Custom Console 总览

它解决什么问题 ​

定制开发通常横跨文件、依赖、Redis Stream、后端 registry 和前端运行入口。Custom Console 的作用是把这些运行时状态集中展示出来,帮助开发者回答:

  • 新增或修改的 Module 是否被扫描到。
  • Module 监听的 Redis Stream 是否存在、是否有消息、consumer group 是否正常。
  • 新增或修改的 Playbook Definition 是否被扫描到,以及它的来源、标签和描述是否正确。
  • SIEM YAML 是否可以解析,字段、关键字段和后端类型是否符合预期。
  • 手动刷新/校验时是否有异常,异常对应到哪个文件。

页面结构 ​

Tab用途推荐配合阅读
Modules查看 Module 名称、描述、脚本路径、Stream 名称、线程数和 Stream 状态。Module 开发
Playbooks查看可运行 Playbook Definition、来源、标签、描述和脚本路径。Playbook 开发
SIEM YAML查看 SIEM 索引 YAML、后端类型、字段数量、关键字段数量和字段明细。SIEM YAML

Playbooks 会区分 official 和 custom 来源。Modules 和 SIEM YAML 没有 official/custom 概念,因此不显示来源字段。

Refresh / Validate ​

每个 Tab 都提供独立的 Refresh / Validate:

  • Modules:重新扫描 Module 脚本,刷新 Module 列表和加载错误。
  • Playbooks:重新扫描内置和自定义 Playbook 脚本,刷新 Definition 列表和加载错误。
  • SIEM YAML:重新扫描 YAML,并刷新 SIEM registry cache。

打开页面时会自动读取当前加载状态,不写入 Audit Log。手动执行 Refresh / Validate 会写入 Audit Log,便于追踪谁在什么时候触发过重新扫描。

如果只修改了脚本定义或 YAML 内容,通常可以直接使用 Refresh / Validate。如果修改了 custom\requirements.txt、安装了新的第三方 Python 包,或调整了公共 helper module,需要先重新安装依赖并重启相关容器,再回到 Custom Console 校验。

Modules ​

Modules Tab 用于观察 Module 是否已经被运行时识别,以及它和 Redis Stream 的关系。

Modules Tab

列表主要字段:

字段说明
ModuleModule 的 NAME。
DescriptionModule 的 DESC。
StreamModule 的 STREAM_NAME,需要和 Webhook / ELK Index Action 写入的 Stream 名称一致。
ThreadsModule 的 THREAD_NUM。
Stream HealthRedis Stream 是否存在、长度、首尾消息 ID、consumer group 摘要。
PathModule 脚本路径。

Stream Inspection ​

Modules 详情中可以只读查看 Redis Stream:

  • Stream 基础信息。
  • Consumer group 摘要。
  • 最近消息 JSON。
  • 按 message ID 读取指定消息。

Module Stream Inspection

该功能只读,不会写入 Stream、消费消息、删除 Stream,也不会触发 Module 运行。它适合用于确认 SIEM 告警是否已经进入 Stream,以及 Module 消费前后 Stream 状态是否合理。

Playbooks ​

Playbooks Tab 展示当前可由 Case 页面运行的 Playbook Definition。它只负责展示和校验,不在 Custom Console 里直接运行 Playbook。要测试 Playbook,请在 Case 详情页使用 Run Playbook。

Playbooks Tab

列表主要字段:

字段说明
PlaybookPlaybook 的 NAME。
Sourceofficial 或 custom。
TagsPlaybook 的 TAGS,用于筛选和识别用途。
DescriptionPlaybook 的 DESC。
PathPlaybook 脚本路径。

Prompt 文件不是 Custom Console 的管理对象。Playbook 可以把 prompt 写在代码中,也可以自行调用 self.read_prompt("System") 读取文件;Custom Console 不会校验 prompt 文件是否存在。

SIEM YAML ​

SIEM YAML Tab 展示每个 YAML 定义的 index、后端、字段数量、关键字段数量和字段表。它适合用于确认 Harness Agent 查询可见的 SIEM schema 是否符合预期。

SIEM YAML Tab

字段表包含:

字段说明
Name字段名。
Type字段类型。
Key field是否标记为关键字段。
Description字段含义。
Sample values示例值。

新建或大幅修改 YAML 通常需要理解日志结构和查询场景,建议使用 SIEM YAML 文档或 SIEM Index YAML Skill 辅助完成。Custom Console 只负责展示和校验最终加载结果。

下一步 ​