# @cumulus/message 中文文档

规范地址：https://npmcn.com/package/%40cumulus/message/

版本：22\.5\.0
npm 元数据更新时间：2026-11-05T21:00:44.330Z
中文译文更新时间：2026-11-11T05:48:37.002Z
软件包许可：Apache-2\.0

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40cumulus/message
原文对照：https://npmcn.com/package/%40cumulus/message/?lang=original
项目主页：https://github.com/nasa/cumulus/tree/master/packages/message
源码仓库：https://github.com/nasa/cumulus

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：458 kB，76 个文件
- TypeScript 类型：未声明
- Node.js 要求：^22\.23\.4
- 运行依赖：8 个
- 首次发布：2020-04-01T22:28:38.450Z
- 最新版本发布：2026-11-05T21:00:44.042Z
- 近 30 天下载量：3123（2026-10-11 至 2026-11-09，npm 官方下载统计）
- 已发布版本数：183（近 12 个月 35 个）

## 中文简介

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

## 安装

```sh
npm install @cumulus/message
```

也可以使用：`pnpm add @cumulus/message`、`yarn add @cumulus/message`、`bun add @cumulus/message`

## README

# @ cummulus/ 消息

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

## 使用量

```bash
  npm install @cumulus/message
```

## API 密码

### 模块

[构建](https://npmcn.com/package/%40cumulus/message/#readme-module_Build)

用于构建 Cumulus 消息的功能

[处决](https://npmcn.com/package/%40cumulus/message/#readme-module_Executions)

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

[颗粒](https://npmcn.com/package/%40cumulus/message/#readme-module_Granules)

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

[队列](https://npmcn.com/package/%40cumulus/message/#readme-module_Queue)

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

### 职能

[获取MessageAsync OperationId(消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_AsyncOperations--getMessageAsyncOperationId) ⇒ `undefined` | `string` ⏏

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

[构造 CollectionId( 名称, 版本)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Collections--constructCollectionId) ⇒ `string` ⏏

返回收藏 ID.

[已解构 CollectionId( 收藏) (d) 国家](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Collections--deconstructCollectionId) ⇒

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

[从信件( 消息) 中获取集合Name](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Collections--getCollectionNameAndVersionFromMessage) ⇒ `CollectionInfo` | `undefined` ⏏

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

[获取从邮件( 消息) 中收集信息](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Collections--getCollectionIdFromMessage) ⇒ `string` | `undefined` ⏏

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

[isCumulusMessage Like( ) 语句](https://npmcn.com/package/%40cumulus/message/#readme-isCumulusMessageLike)

检查 CumulusMessage 形状

[isDLQ记录类似( )](https://npmcn.com/package/%40cumulus/message/#readme-isDLQRecordLike)

SQS 信件形状的空格检查

[解围信库Message ()](https://npmcn.com/package/%40cumulus/message/#readme-unwrapDeadLetterCumulusMessage)

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

[提取SQSMetata(消息)](https://npmcn.com/package/%40cumulus/message/#readme-extractSQSMetadata) ⇒

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

[升起CumulusMessageDetails () (中文(简体) )](https://npmcn.com/package/%40cumulus/message/#readme-hoistCumulusMessageDetails)

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

[获取MessagePdr(消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_PDRs--getMessagePdr) ⇒ `undefined` | `Object` ⏏

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

[信件HasPdr( 消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_PDRs--messageHasPdr) ⇒ `boolean` ⏏

确定信件是否有 PDR .

[获取MessagePdrPANSent(消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_PDRs--getMessagePdrPANSent) ⇒ `boolean` ⏏

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

[获取MessagePdrPANMessage(消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_PDRs--getMessagePdrPANMessage) ⇒ `string` ⏏

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

[获取MessagePdrName(消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_PDRs--getMessagePdrName) ⇒ `string` ⏏

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

[获取MessagePdrRunning 执行(消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_PDRs--getMessagePdrRunningExecutions) ⇒ `number` ⏏

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

[获得MessagePdr 完成执行(消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_PDRs--getMessagePdrCompletedExecutions) ⇒ `number` ⏏

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

[获取MessagePdrFlied Executions( 消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_PDRs--getMessagePdrFailedExecutions) ⇒ `number` ⏏

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

[获取MessagePdrStats(消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_PDRs--getMessagePdrStats) ⇒ `PdrStats` ⏏

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

[获取 PdrPercent 完成( 数据)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_PDRs--getPdrPercentCompletion) ⇒ `number` ⏏

完成共和国处决的百分比

[生成 PdrApi 从Message( 消息, 更新At) 记录](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Executions--generatePdrApiRecordFromMessage) ⇒ `ApiPdr` ⏏

从消息中生成 PDR API 记录 .

[获取消息](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Providers--getMessageProvider) ⇒ `MessageProvider` | `string` ⏏

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

[获取消息](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Providers--getMessageProviderId) ⇒ `undefined` | `string` ⏏

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

[牵引StepFunfunctionEvent(事件)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_StepFunctions--pullStepFunctionEvent) ⇒ `Promise.<object>` ⏏

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

[剖析步骤( stepMessage, step)Name](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_StepFunctions--parseStepMessage) ⇒ `Promise.<object>` ⏏

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

[获取失败的StepName (事件, 失败的StepEvent)](https://npmcn.com/package/%40cumulus/message/#readme-getFailedStepName) ⇒ `string`

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

[上次失败的晚会Step( 事件)](https://npmcn.com/package/%40cumulus/message/#readme-lastFailedEventStep) ⇒ `Array.<HistoryEvent>` | `undefined`

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

[获取失败ExecutionMessage( 输入CumulusMessage, 获取ExecutionHistory Function) 命令](https://npmcn.com/package/%40cumulus/message/#readme-getFailedExecutionMessage) ⇒ `Object`

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

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

回到总体执行投入.

[是FileExtension Matched(granuleFile,扩展名)](https://npmcn.com/package/%40cumulus/message/#readme-isFileExtensionMatched) ⇒ `boolean`

检查文件是否有扩展名

[解析例外( 例外)](https://npmcn.com/package/%40cumulus/message/#readme-parseException) ⇒ `string`

确保例外作为对象返回

[获取气象状态( 消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_workflows--getMetaStatus) ⇒ `Message.WorkflowStatus` | `undefined` ⏏

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

[获取 MessageWorkflow 任务(消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_workflows--getMessageWorkflowTasks) ⇒ `Object` | `undefined` ⏏

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

[获取 MessageWorkflows 开始时间(消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_workflows--getMessageWorkflowStartTime) ⇒ `number` | `undefined` ⏏

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

[获得MessageWorkflow 停止时间(消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_workflows--getMessageWorkflowStopTime) ⇒ `number` | `undefined` ⏏

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

[获取MessageWorkflowName(消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_workflows--getMessageWorkflowName) ⇒ `string` | `undefined` ⏏

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

[获得工作流程定义( 开始时间, \[停止时间\])](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_workflows--getWorkflowDuration) ⇒ `number` ⏏

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

### 构建

用于构建 Cumulus 消息的功能

**示例**

```js
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行动 编号 | `string` | Async 操作 ID |
| \[段落. Custom CumulusMeta\] | `Object` | 自定义消息数据. cumulus meta |
| \[段落.海关Meta\] | `Object` | 自定义消息数据.meta |
| \[段落. executionName 前缀\] | `string` | 适用于被排列的处决名称的前缀 |

### 处决

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

**示例**

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

-   [处决](https://npmcn.com/package/%40cumulus/message/#readme-module_Executions)
    -   [构建ExecutionArn( 状态 MachineArn, 执行Name](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Executions--buildExecutionArn) ⇒ `string` ⏏
    -   [获取Execution UrlFromArn( 执行)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Executions--getExecutionUrlFromArn) ⇒ `string` ⏏
    -   [获取 State MachineArn FromExecutionArn( 执行 )](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Executions--getStateMachineArnFromExecutionArn) ⇒ `string` ⏏
    -   [获取MessageExecutionName(消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Executions--getMessageExecutionName) ⇒ `string` ⏏
    -   [获取Message State MachineArn( 消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Executions--getMessageStateMachineArn) ⇒ `string` ⏏
    -   [获取MessageExecutionArn(消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Executions--getMessageExecutionArn) ⇒ `null` | `string` ⏏
    -   [获取信息](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Executions--getMessageExecutionParentArn) ⇒ `undefined` | `string` ⏏
    -   [获取MessageCumulusVersion(消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Executions--getMessageCumulusVersion) ⇒ `undefined` | `string` ⏏
    -   [获得Message Execution 原始文件](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Executions--getMessageExecutionOriginalPayload) ⇒ `unknown` | `undefined` ⏏
    -   [获取Message Execution 页面存档备份,存于互联网档案馆](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Executions--getMessageExecutionFinalPayload) ⇒ `unknown` | `undefined` ⏏
    -   [生成ExecumentApi Record fromMessage(消息,\[更新At\])](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Executions--generateExecutionApiRecordFromMessage) ⇒ `ApiExecution` ⏏
    -   _全球_
        -   [生成 PdrApi 从Message( 消息, 更新At) 记录](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Executions--generatePdrApiRecordFromMessage) ⇒ `ApiPdr` ⏏

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

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

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

| 参数 | 类型 | 说明 |
| --- | --- | --- |
| 状态机器Name | `string` | 状态机器 ARN |
| 执行Name | `string` | 状态机器的执行名称 |

#### 获取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`](https://npmcn.com/package/%40cumulus/message/#readme-module_Executions) **回返**数字 : `ApiPdr` - PDR API记录

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

### 颗粒

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

**示例**

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

-   [颗粒](https://npmcn.com/package/%40cumulus/message/#readme-module_Granules)
    -   [获取MessageGranules(消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Granules--getMessageGranules) ⇒ `Array.<object>` | `undefined` ⏏
    -   [信件( 消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Granules--messageHasGranules) ⇒ `boolean` ⏏
    -   [granule 状态( 工作流程状态, 颗粒)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Granules--getGranuleStatus) ⇒ `string` ⏏
    -   [获取 Granule 查询字段( 消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Granules--getGranuleQueryFields) ⇒ `unknown` | `undefined` ⏏
    -   [生成 GranuleApi 记录( 消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Granules--generateGranuleApiRecord) ⇒ `Promise.<ApiGranule>` ⏏

#### 获取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 消息解析队列信息的功能

**示例**

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

-   [队列](https://npmcn.com/package/%40cumulus/message/#readme-module_Queue)
    -   [获取QueeUrl( 消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Queue--getQueueUrl) ⇒ `string` ⏏
    -   [获取 Maximum 执行( 消息, 队列Url)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Queue--getMaximumExecutions) ⇒ `number` ⏏
    -   [有队列和ExecutionLimit(消息)](https://npmcn.com/package/%40cumulus/message/#readme-exp_module_Queue--hasQueueAndExecutionLimit) ⇒ `boolean` ⏏

#### 获取QueeUrl( 消息) QQ `string` ⏏

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

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

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

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

排队的死刑最多.

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

-   `Error` 如果无法找到最大限度的处决

| 参数 | 类型 | 说明 |
| --- | --- | --- |
| 消息 | `Message.CumulusMessage` | 一个工作流程消息对象 |
| 队列Url | `string` | 队列 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 函数事件阵列 |
| 失败的StepEvent | `failedStepEvent` | Step 函数失败的事件 . |
| 失败的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 执行步骤信息或执行输入信息

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

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

检查文件是否有扩展名

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

| 参数 | 类型 | 说明 |
| --- | --- | --- |
| 颗粒花序 | `ApiFile` | Granule 文件 : |
| 扩展 | `string` | 要检查的文件扩展名 |

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

确保例外作为对象返回

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

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

## 关于 Cumulus

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

[Cumulus 文档](https://nasa.github.io/cumulus)

## 捐款

做贡献,请 [参见我们的贡献准则](https://github.com/nasa/cumulus/blob/master/CONTRIBUTING.md)。 。 。 .

* * *

自动使用 `npm run build-docs`

## 常见问题

### @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 和提交记录判断。

