@cumulus/message

中文文档
22.5.0发布于 2026/11/06Apache-2.0近 30 天下载 3123

用于建造和解析 Cumulus 信件的公用事业

中文使用文档
文档目录20 节
  1. 使用量
  2. API 密码
  3. 模块
  4. 职能
  5. 构建
  6. 处决
  7. 颗粒
  8. 队列
  9. isCumulusMessage Like( ) 语句
  10. isDLQ记录类似( )
  11. 解围信库Message ()
  12. 提取 SQSMetata( 消息) QQ
  13. 升起CumulusMessageDetails () (中文(简体) )
  14. 获得失败的 StepName (事件, 失败的 StepEvent) % string
  15. 上次失败的EventStep( 事件) QQ Array.<HistoryEvent> | undefined
  16. 获取失败ExecutiveMessage(输入CumulusMessage, 获得ExecutiveHistory F…
  17. 是 FileExtension 马特赫德( granuleFile, 扩展名) QQ boolean
  18. 解析例外( 例外) @% 1 string
  19. 关于 Cumulus
  20. 捐款

@ cummulus/ 消息

用于构建和解析 Cumulus 工作流程信息的公用事业.

使用量

  npm install @cumulus/message

API 密码

模块

构建

用于构建 Cumulus 消息的功能

处决

生成执行信息或解析执行信息的实用功能 从 Cumulus 信件中

颗粒

从 Cumulus 信件解析颗粒信息的功能

队列

从 Cumulus 消息解析队列信息的功能

职能

获取MessageAsync OperationId(消息) ⇒ undefined | string ⏏

从工作流程消息中获取同步操作ID, 如果有的话.

构造 CollectionId( 名称, 版本) ⇒ string ⏏

返回收藏 ID.

已解构 CollectionId( 收藏) (d) 国家 ⇒

返回基于 用于弹性搜索索引的收藏Id

从信件( 消息) 中获取集合Name ⇒ CollectionInfo | undefined ⏏

从执行消息中获取收藏名称和版本 .

获取从邮件( 消息) 中收集信息 ⇒ string | undefined ⏏

从执行消息中获取收藏ID.

isCumulusMessage Like( ) 语句

检查 CumulusMessage 形状

isDLQ记录类似( )

SQS 信件形状的空格检查

解围信库Message ()

解开已死字母 Cumulus 消息,可能用 国家云表活动,包含在SQS信息中.

提取SQSMetata(消息) ⇒

从 SQS(/DLQ) 记录中剥取元数据

升起CumulusMessageDetails () (中文(简体) )

Reformat 有顶级密钥属性的对象.

获取MessagePdr(消息) ⇒ undefined | Object ⏏

从工作流程信息中获取 PDR 对象, 如果有的话.

信件HasPdr( 消息) ⇒ boolean ⏏

确定信件是否有 PDR .

获取MessagePdrPANSent(消息) ⇒ boolean ⏏

从工作流程信息中获取 PAN 发送状态, 如果有的话 .

获取MessagePdrPANMessage(消息) ⇒ string ⏏

从工作流程消息中获取 PAN 消息状态, 如果有的话 .

获取MessagePdrName(消息) ⇒ string ⏏

从工作流程信息中获取 PDR 名称, 如果有的话.

获取MessagePdrRunning 执行(消息) ⇒ number ⏏

如果有的话,请提供共和国执行处决的次数.

获得MessagePdr 完成执行(消息) ⇒ number ⏏

如果有的话,请提供共和国的死刑数量.

获取MessagePdrFlied Executions( 消息) ⇒ number ⏏

获取一个共和国的死刑失败数.

获取MessagePdrStats(消息) ⇒ PdrStats ⏏

把PDR数据从工作流程信息中调出来.

获取 PdrPercent 完成( 数据) ⇒ number ⏏

完成共和国处决的百分比

生成 PdrApi 从Message( 消息, 更新At) 记录 ⇒ ApiPdr ⏏

从消息中生成 PDR API 记录 .

获取消息 ⇒ MessageProvider | string ⏏

把供应商从工作流程信息中调出来.

获取消息 ⇒ undefined | string ⏏

从工作流程消息中获取提供者的ID, 如果有的话.

牵引StepFunfunctionEvent(事件) ⇒ Promise.<object> ⏏

设定一个步骤函数事件, 将指定的密钥替换为内容 s3 远程信件

剖析步骤( stepMessage, step)Name ⇒ Promise.<object> ⏏

用 CMA 密钥解析步骤消息, 并替换指定密钥, 如果有内容的话 s3 远程信件

获取失败的StepName (事件, 失败的StepEvent) ⇒ string

搜索与任务国相关的执行步骤历史 失败的任务 ID。 HistoryEvent ids 依次编号,开始于 一个.

上次失败的晚会Step( 事件) ⇒ Array.<HistoryEvent> | undefined

查找所有失败的执行事件并返回列表中的最后一个事件 . 寻找失败的 Lambda 处决( Lambda Function Fault) , 失败的 ECS 任务( 任务失败) 或外部工人( 活动失败)

获取失败ExecutionMessage( 输入CumulusMessage, 获取ExecutionHistory Function) 命令 ⇒ Object

获取消息用于发布失败的执行通知 .

尝试获取执行中最后一个失败步骤的输入, 这样我们就可以 更新初始执行中不存在的任何颗粒/ PDR 状态 输入.

回到总体执行投入.

是FileExtension Matched(granuleFile,扩展名) ⇒ boolean

检查文件是否有扩展名

解析例外( 例外) ⇒ string

确保例外作为对象返回

获取气象状态( 消息) ⇒ Message.WorkflowStatus | undefined ⏏

获取工作流程消息的状态, 如果有的话 .

获取 MessageWorkflow 任务(消息) ⇒ Object | undefined ⏏

在工作流程信息中获取工作流程任务, 如果有的话 .

获取 MessageWorkflows 开始时间(消息) ⇒ number | undefined ⏏

如果有工作流程启动时间的话.

获得MessageWorkflow 停止时间(消息) ⇒ number | undefined ⏏

让工作流程停止时间,如果有的话.

获取MessageWorkflowName(消息) ⇒ string | undefined ⏏

获取工作流程名称,如果有的话.

获得工作流程定义( 开始时间, [停止时间]) ⇒ number ⏏

获取工作流程的持续时间 .

构建

用于构建 Cumulus 消息的功能

示例

const Build = require('@cumulus/message/Build');

构建来自Template( params) @ @ @ info Message.CumulusMessage ⏏

从工作流程模板中创建用于排队执行的 SQS 消息 .

仁爱: 导出函数 回返数字 : Message.CumulusMessage - Cumulus 信件对象

参数类型说明
段落Object
提供方Object提供者对象
段落收集Object收藏对象
parms.executionArn (英语)string用于父执行的 ARN
模板Object工作流程信件模板
超载负载Object工作流程的有效载荷
工作流程Object工作流程名称和 arn 对象
[段落.async行动 编号stringAsync 操作 ID
[段落. Custom CumulusMeta]Object自定义消息数据. cumulus meta
[段落.海关Meta]Object自定义消息数据.meta
[段落. executionName 前缀]string适用于被排列的处决名称的前缀

处决

生成执行信息或解析执行信息的实用功能 从 Cumulus 信件中

示例

const Executions = require('@cumulus/message/Executions');

建立ExecutionArn( State MachineArn, executionName) QQ string ⏏

从状态机器 ARN 构建执行 ARN 和执行名

仁爱: 导出函数 回返数字 : string - 处决ARN

参数类型说明
状态机器Namestring状态机器 ARN
执行Namestring状态机器的执行名称

获取Execution UrlFromArn( ExecutionArn) QQ string ⏏

从执行 ARN 返回执行 URL.

仁爱: 导出函数 回返数字 : string - 返回执行时的 AWS 控制台 URL

参数类型说明
执行string执行 ARN

获取 State MachineArn FromExecution Arn (ExecutionArn) string ⏏

从处决中获取状态机器ARN ARN

仁爱: 导出函数 回返数字 : string - 国家机器ARN

参数类型说明
执行string执行 ARN

获取Message ExecutionName (消息) QQ string ⏏

从工作流程消息中获取执行名称 .

仁爱: 导出函数 回返数字 : string - 一个行刑名 掷出数字 :

  • Error 如果没有执行名称
参数类型说明
消息Message.CumulusMessage一个工作流程消息对象

获得Message State MachineArn(信息) {} string ⏏

从工作流程信息中获取状态机器ARN.

仁爱: 导出函数 回返数字 : string - 国家机器ARN 掷出数字 :

  • Error 如果没有国家机器ARN
参数类型说明
消息Message.CumulusMessage一个工作流程消息对象

获取Message ExecutionArn( 消息) QQ null | string ⏏

从工作流程消息中获取执行 ARN.

仁爱: 导出函数 回返数字 : null | string - 国家机器处决ARN

参数类型说明
消息Message.CumulusMessage一个工作流程消息对象

获得Message Execution 父母(消息) QQ undefined | string ⏏

从工作流程消息中获取父执行 ARN, 如果有的话.

仁爱: 导出函数 回返数字 : undefined | string - 国家机器处决ARN

参数类型说明
消息Message.CumulusMessage一个工作流程消息对象

获取MessageCumulusVersion(消息) {} undefined | string ⏏

从工作流程信息中获取 Cumulus 版本, 如果有的话 .

仁爱: 导出函数 回返数字 : undefined | string - 积分版

参数类型说明
消息Message.CumulusMessage一个工作流程消息对象

获取Message Execution 原始的Payload( 消息) QQ unknown | undefined ⏏

获取工作流程原始载荷,如果有的话.

仁爱: 导出函数 回返数字 : unknown | undefined - 工作流程原始有效载荷

参数类型说明
消息MessageWithPayload一个工作流程消息对象

获取Message Execution FinalPayload( 消息) QQ unknown | undefined ⏏

得到工作流程最后有效载荷,如果有的话.

仁爱: 导出函数 回返数字 : unknown | undefined - 工作流程最后有效载荷

参数类型说明
消息MessageWithPayload一个工作流程消息对象

生成 ExecutionApi Record fromMessage(消息,[更新At]) QQ ApiExecution ⏏

从消息中生成 API 的执行记录 .

仁爱: 导出函数 回返数字 : ApiExecution - 处决API记录

参数类型说明
消息MessageWithPayload一个工作流程消息对象
[更新string可选更新的时间戳适用于记录

生成 PdrApi Record fromMessage( 消息, [更新At]) QQ ApiPdr ⏏

从消息中生成 PDR API 记录 .

仁爱:全球方法 Executions 回返数字 : ApiPdr - PDR API记录

参数类型说明
消息MessageWithOptionalPayloadPdr一个工作流程消息对象
[更新string可选更新的时间戳适用于记录

颗粒

从 Cumulus 信件解析颗粒信息的功能

示例

const Granules = require('@cumulus/message/Granules');

获取Message Granules(消息) {} Array.<object> | undefined ⏏

从有效载荷中取出颗粒.

仁爱: 导出函数 回返数字 : Array.<object> | undefined - 颗粒物阵列,或 未定义如果 message.payload.granules 未设置

参数类型说明
消息Message.CumulusMessage一个工作流程消息

信件 HasGranules( 消息) QQ boolean ⏏

确定信件是否有颗粒对象 .

仁爱: 导出函数 回返数字 : boolean - 如果信件有颗粒对象, 则为真

参数类型说明
消息Message.CumulusMessage一个工作流程消息对象

granule 状态( 工作流程状态, 颗粒) QQ string ⏏

确定颗粒的状态.

仁爱: 导出函数 回返数字 : string - 颗粒状态

参数类型说明
工作流程现状string工作流程状态
颗粒MessageGranule颗粒记录符合“ api” 方案

获取 Granule 查询字段( 消息) QQ unknown | undefined ⏏

获取颗粒的查询字段, 如果有的话

仁爱: 导出函数 回返数字 : unknown | undefined - 颗粒查询字段,如果有的话

参数类型说明
消息MessageWithGranules一个工作流程消息

生成 GranuleApi 记录( 消息) QQ Promise.<ApiGranule> ⏏

生成 API 颗粒记录

仁爱: 导出函数 回返数字 : Promise.<ApiGranule> - 颗粒API记录

参数类型说明
消息MessageWithGranules一个工作流程消息

队列

从 Cumulus 消息解析队列信息的功能

示例

const Queue = require('@cumulus/message/Queue');

获取QueeUrl( 消息) QQ string ⏏

从工作流程消息中获取队列 URL .

仁爱: 导出函数 回返数字 : string - 队列 URL

参数类型说明
消息MessageWithQueueInfo一个工作流程消息对象

获取 Maximum Executions( 消息, 队列Url) QQ number ⏏

排队的死刑最多.

仁爱: 导出函数 回返数字 : number - 排队的最大处决数 掷出数字 :

  • Error 如果无法找到最大限度的处决
参数类型说明
消息Message.CumulusMessage一个工作流程消息对象
队列Urlstring队列 URL

有 QueetAndExecutionLimit(消息) QQ boolean ⏏

确定消息中是否有队列和队列执行限制 .

仁爱: 导出函数 回返数字 : boolean - 如果有排队和执行限制,则属实.

参数类型说明
消息MessageWithQueueInfo一个工作流程消息对象

isCumulusMessage Like( ) 语句

检查 CumulusMessage 形状

仁爱:全球职能

isDLQ记录类似( )

SQS 信件形状的空格检查

仁爱:全球职能

解围信库Message ()

解开已死字母 Cumulus 消息,可能用 国家云表活动,包含在SQS信息中.

仁爱:全球职能

提取 SQSMetata( 消息) QQ

从 SQS(/DLQ) 记录中剥取元数据

仁爱:全球职能 回返: 没有正文的给定信息

参数说明
消息DLQ 或 SQS 消息

升起CumulusMessageDetails () (中文(简体) )

Reformat 有顶级密钥属性的对象.

仁爱:全球职能

获得失败的 StepName (事件, 失败的 StepEvent) % string

搜索与任务国相关的执行步骤历史 失败的任务 ID。 HistoryEvent ids 依次编号,开始于 一个.

仁爱:全球职能 回返数字 : string - 当前继函数任务的名称或“ 未知失败步骤Name.

参数类型说明
事件Array.<HistoryEvent>Step 函数事件阵列
失败的StepEventfailedStepEventStep 函数失败的事件 .
失败的StepEvent.id数字(长),步骤函数失败事件 id.

上次失败的EventStep( 事件) QQ Array.<HistoryEvent> | undefined

查找所有失败的执行事件并返回列表中的最后一个事件 . 寻找失败的 Lambda 处决( Lambda Function Fault) , 失败的 ECS 任务( 任务失败) 或外部工人( 活动失败)

仁爱:全球职能 回返数字 : Array.<HistoryEvent> | undefined - 上次失败的羔羊或活动 事件数组,或为空数组.

参数类型说明
事件Array.<HistoryEvent>aWS 步态执行阵列历史事件

获取失败ExecutiveMessage(输入CumulusMessage, 获得ExecutiveHistory Function) QQ Object

获取消息用于发布失败的执行通知 .

尝试获取执行中最后一个失败步骤的输入, 这样我们就可以 更新初始执行中不存在的任何颗粒/ PDR 状态 输入.

回到总体执行投入.

仁爱:全球职能 回返数字 : Object - CumulusMessage 执行步骤信息或执行输入信息

参数类型说明
输入CumulusMessageObject工作流程执行输入消息
获取执行历史功能function对 StepFunctions 的模拟/etc 进行测试覆盖。 GetExecutionHistory

是 FileExtension 马特赫德( granuleFile, 扩展名) QQ boolean

检查文件是否有扩展名

仁爱:全球职能 回返数字 : boolean - 文件是否有扩展名

参数类型说明
颗粒花序ApiFileGranule 文件 :
扩展string要检查的文件扩展名

解析例外( 例外) @% 1 string

确保例外作为对象返回

仁爱:全球职能 回返数字 : string - 字符串例外

参数类型说明
例外Object | undefined除外情况

关于 Cumulus

Cumulus是美国航天局未来地球科学数据流的以云为基础的数据摄取,存档,分发和管理原型.

Cumulus 文档

捐款

做贡献,请 参见我们的贡献准则。 。 。 .


自动使用 npm run build-docs

版本与发布记录

@cumulus/message 共发布 183 个版本,首次发布于 2020/04/02;过去 12 个月发布了 35 个版本。

版本发布日期距今
22.5.0latest2026/11/065 天前
22.4.42026/11/065 天前
22.4.32026/10/031 个月前
22.4.22026/09/251 个月前
22.4.12026/09/151 个月前
22.4.02026/09/022 个月前

其他发布通道:release-v2.0.8 → 2.0.8,release-v6.0.1 → 6.0.1,release-v8.1.1 → 8.1.1,release-v9.2.1 → 9.2.1,release-v8.1.2 → 8.1.2,release-v9.2.2 → 9.2.2。

关于 @cumulus/message 的常见问题

@cumulus/message 是什么?

用于建造和解析 Cumulus 信件的公用事业

如何安装 @cumulus/message?

在项目目录运行 npm install @cumulus/message,或使用 pnpm add / yarn add / bun add。

@cumulus/message 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/cumulus__message 是否存在。

@cumulus/message 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js ^22.23.4。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@cumulus/message 可以商用吗?

@cumulus/message 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@cumulus/message 的下载量有多少?

根据 npm 官方下载统计,@cumulus/message 在 2026/10/11 – 2026/11/09 这 30 天内被下载 3,123 次,日均约 104 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@cumulus/message 还在维护吗?

最新版本 22.5.0 发布于 2026/11/06(5 天前);至今共发布 183 个版本,其中过去 12 个月发布了 35 个;首次发布于 2020/04/02。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。