@cumulus/logger

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

用于 Cumulus 的日志库

中文使用文档
文档目录13 节
  1. 安装
  2. 使用量
  3. API 密码
  4. new Logger({ [asyncOperationId], [executions], [granules], …
  5. log.debug([...messageArgs])
  6. log.error([...messageArgs][, error])
  7. log.fatal([...messageArgs])
  8. log.info([...messageArgs])
  9. log.infoWithAdditionalKeys(additionalKeys, ...messageArgs)
  10. log.trace([...messageArgs])
  11. log.warn([...messageArgs])
  12. 关于 Cumulus
  13. 捐款

@ cumulus/ 拖放器

用于Cumulus项目的伐木库.

这个 @cumulus/logger 库导出a Logger 类,生成 JSON格式日志事件.

日志事件总是有以下密钥:

  • 职等 (字符串) - 消息的优先级
  • 消息 (字符串) - 信息本身
  • 发送者 (字符串) - 生成消息的资源
  • 时间戳 (字符串) - ISO-8601倍印章

日志事件可能有以下选项密钥:

  • 处决 (弦声)
  • 颗粒 (弦 [弦状对象数组])
  • 父目录 (弦声)
  • 堆栈Name (弦声)
  • 版本 (弦声)
  • 自动操作 (弦声)

日志事件也可能包含用户指定的密钥.

示例日志事件 :

{
  "level": "info",
  "message": "hello world",
  "sender": "greetingFunction",
  "timestamp": "2018-10-19T19:12:47.501Z"
}

安装

npm install @cumulus/logger

使用量

const Logger = require('@cumulus/logger');

const log = new Logger({ sender: 'example' });

log.info('hello, world');

API 密码

new Logger({ [asyncOperationId], [executions], [granules], [parentArn], [sender], [stackName], [version] })

自动操作

类型 : string

与工作流程相联的可选自动同步操作 ID.

处决

类型 : string

死刑的选择性描述.

颗粒

类型 : string

可选颗粒弦. 通常为串列的颗粒对象.

父目录

类型 : string

启动当前执行的父工作流程的可选步骤 ARN .

发送者

类型 : string

日志事件发送者 。 典型的 Lambda 函数名或 ECS 任务名 . 默认为"未知".

堆栈Name

类型 : string

库穆卢斯堆栈名.

版本

类型 : string

可选版本.

log.debug([...messageArgs])

写入一个日志事件, 将级别设置为“ 调试 ” .

参数

类型 : ...any

见 控制台.log ()。 。 。 .

log.error([...messageArgs][, error])

将日志事件写入 stderr, 级别设置为 “ 错误 ” .

参数

类型 : ...any

见 控制台.log ()。 。 。 .

错误

类型 : Error

如果最后一个参数为错误, 那么日志事件将设置以下附加属性 :

  • 错误 (目标)
    • 名称 (弦声)
    • 消息 (弦声)
    • 堆栈 (Array<string>) - 堆栈跟踪的行

log.fatal([...messageArgs])

写入一个日志事件, 将关卡设置为" fatal" .

参数

类型 : ...any

见 控制台.log ()。 。 。 .

log.info([...messageArgs])

写入日志事件, 将关卡设置为“ info” .

参数

类型 : ...any

见 控制台.log ()。 。 。 .

log.infoWithAdditionalKeys(additionalKeys, ...messageArgs)

写入日志事件, 将关卡设置为“ info” 。 计外 标准键,将会为事件添加额外的键. 如果有额外的密钥 指定与标准密钥名称相同,值标准密钥将 显示.

额外键

类型 : Object

新增要添加的密钥/ 值对 .

参数

类型 : ...any

见 控制台.log ()。 。 。 .

log.trace([...messageArgs])

写入一个日志事件, 将关卡设置为“ 追踪 ” .

参数

类型 : ...any

见 控制台.log ()。 。 。 .

log.warn([...messageArgs])

写入一个日志事件, 将级别设置为“ 调试 ” .

参数

类型 : ...any

见 控制台.log ()。 。 。 .

关于 Cumulus

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

Cumulus 文档

捐款

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

版本与发布记录

@cumulus/logger 共发布 208 个版本,首次发布于 2018/10/31;过去 12 个月发布了 36 个版本。

版本发布日期距今
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-v1.13.6 → 1.13.6,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。

关于 @cumulus/logger 的常见问题

@cumulus/logger 是什么?

用于 Cumulus 的日志库

如何安装 @cumulus/logger?

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

@cumulus/logger 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@cumulus/logger 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

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

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

@cumulus/logger 可以商用吗?

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

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

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

@cumulus/logger 还在维护吗?

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