# @apalchys/pino-cloudwatch 中文文档

规范地址：https://npmcn.com/package/%40apalchys/pino-cloudwatch/

版本：0\.9\.0
npm 元数据更新时间：2023-11-19T13:48:47.591Z
中文译文更新时间：2026-11-06T20:17:36.585Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40apalchys/pino-cloudwatch
原文对照：https://npmcn.com/package/%40apalchys/pino-cloudwatch/?lang=original
项目主页：https://github.com/apalchys/pino-cloudwatch#readme
源码仓库：https://github.com/apalchys/pino-cloudwatch

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

- 包体积（解压后）：16.2 kB，14 个文件
- 模块格式：CommonJS
- TypeScript 类型：包内自带
- Node.js 要求：\>=16
- 运行依赖：6 个
- 首次发布：2021-11-04T15:02:57.929Z
- 最新版本发布：2023-11-19T13:48:47.381Z
- 近 30 天下载量：2384（2026-10-06 至 2026-11-04，npm 官方下载统计）
- 已发布版本数：11（近 12 个月 0 个）

## 中文简介

云表日志传输

## 安装

```sh
npm install @apalchys/pino-cloudwatch
```

也可以使用：`pnpm add @apalchys/pino-cloudwatch`、`yarn add @apalchys/pino-cloudwatch`、`bun add @apalchys/pino-cloudwatch`

## README

# 皮诺-云表

#### 将皮诺日志发送给 AWS 云表日志 .

## 关于

`pino-cloudwatch` 很简单 [皮诺](https://getpino.io/#/) 缓冲和持有的运输工具 [皮诺](https://getpino.io/#/) 在满足下列条件之一之前的日志 :

-   日志数量达到10 000个
-   日志的“ 大小” 达到 1 048 576 字节 OR
-   至少有1个日志被缓冲, 1 000 ms( 默认) 已经通过, 没有其他日志项目被缓冲 这是为了尽量少打给云表日志的电话.

日志组名称通过 CLI 指定(`--prefix`)和日志流名基于以下信息:

-   可选 `prefix`, (中文(简体) ),
-   主机名( 通过 `os.hostname()`, (中文(简体) ),
-   进程 ID(通过 `process.id`, (中文(简体) ),
-   将第一个日志发送到 Cloud Watch 日志时的时代

## 使用量

```
# ./bin/pino-cloudwatch.js
Sends pino logs to AWS CloudWatch Logs.
Usage: node index.js | pino-cloudwatch [options]

Options:
  --help                   Show help                                   [boolean]
  --version                Show version number                         [boolean]
  --aws_access_key_id      AWS Access Key ID
  --aws_secret_access_key  AWS Secret Access Key
  --aws_region             AWS Region
  --group                  AWS CloudWatch log group name              [required]
  --prefix                 AWS CloudWatch log stream name prefix
  --stream                 AWS CloudWatch log stream name, overrides --prefix option.
  --interval               The maxmimum interval (in ms) before flushing the log
                           queue.                                [default: 1000]
```

## 选项

### `group`数字 : `String` (必须)

### `prefix`数字 : `String`

### `interval`数字 : `Integer` (默认) `1000`女士们, `0` 要禁用)

这个 `interval` 是试图将日志发送到 Cloud Watch Logs 之前必须耗去的时间。 增加这个功能以减少给"云表日志"的呼叫次数.

如果你把这个设定为 `0` 然后,它只在以下时间发出日志:

-   它达到最大圆木数
-   它达到了日志的最大尺寸

**说明**: 禁用间隔可能意味着日志会 _永远_ 发送到云表日志.

### `aws_access_key_id`数字 : `String`

### `aws_secret_access_key`数字 : `String`

### `aws_region`数字 : `String`

## 其他用途

### 可写流

此模块可以被要求并用作可写流 :

```javascript
var pump = require("pump");
var split = require("split2");
var pinoCloudWatch = require("pino-cloudwatch");

pump(process.stdin, split(), pinoCloudWatch({ group: "test" }));
```

#### 可写入流事件

由于pino-cloudwatch返回可写流,您可以像其它可写流一样附加事件处理器(参见 [https://nodejs.org/dist/v10.19.0/docs/api/stream.html#stream writable streams (英语)](https://nodejs.org/dist/v10.19.0/docs/api/stream.html#stream_writable_streams)) (中文(简体) ).

此外,a `flushed` 一旦日志被成功推出/保存在 AWS 云表日志中,事件就会被释放.

```javascript
var pump = require("pump");
var split = require("split2");
var pinoCloudWatch = require("pino-cloudwatch");
var streamToCloudWatch = pinoCloudWatch({ group: "test" });

streamToCloudWatch.on("flushed", function () {
  console.log("Logs were successfully sent to AWS CloudWatch");
});

pump(process.stdin, split(), pinoCloudWatch({ group: "test" }));
```

### 任意日志

技术上 `pino-cloudwatch` 可将任何对象模式流发送到 Cloud Watch Logs 。 这包括: _任意_ 基于文本的日志文件。 例如:跟踪像nginx访问.log这样的标准日志文件.

## 测试

```
# npm test
```

## 常见问题

### @apalchys/pino-cloudwatch 是什么？

云表日志传输

### 如何安装 @apalchys/pino-cloudwatch？

在项目目录运行 npm install @apalchys/pino-cloudwatch，或使用 pnpm add / yarn add / bun add。它还提供命令行工具 pino-cloudwatch，可以用 npx pino-cloudwatch 直接运行。

### @apalchys/pino-cloudwatch 支持 TypeScript 吗？

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

### @apalchys/pino-cloudwatch 支持 ESM 还是 CommonJS？

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

### @apalchys/pino-cloudwatch 需要什么版本的 Node\.js？

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

### @apalchys/pino-cloudwatch 可以商用吗？

@apalchys/pino-cloudwatch 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @apalchys/pino-cloudwatch 的下载量有多少？

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

### @apalchys/pino-cloudwatch 还在维护吗？

最新版本 0\.9\.0 发布于 2023/11/19（2 年前）；至今共发布 11 个版本，其中过去 12 个月发布了 0 个；首次发布于 2021/11/04。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

