# @cloudnative/health 中文文档

规范地址：https://npmcn.com/package/%40cloudnative/health/

版本：2\.1\.2
npm 元数据更新时间：2022-07-25T13:57:39.271Z
中文译文更新时间：2026-11-10T03:08:47.855Z
软件包许可：Apache-2\.0

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

原始 npm 页面：https://www.npmjs.com/package/%40cloudnative/health
原文对照：https://npmcn.com/package/%40cloudnative/health/?lang=original
项目主页：http://cloudnativejs.io/
源码仓库：https://github.com/CloudNativeJS/cloud-health

弃用说明：Package no longer supported\. Contact Support at https://www\.npmjs\.com/support for more info\.

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

- 包体积（解压后）：215 kB，28 个文件
- 模块格式：CommonJS
- TypeScript 类型：未声明
- 运行依赖：0 个
- 首次发布：2018-07-18T16:32:21.040Z
- 最新版本发布：2019-12-04T17:25:08.166Z
- 近 30 天下载量：99561（2026-10-10 至 2026-11-08，npm 官方下载统计）
- 已发布版本数：7（近 12 个月 0 个）

## 中文简介

用于建设健康检查终点的功能模块

## 安装

```sh
npm install @cloudnative/health
```

也可以使用：`pnpm add @cloudnative/health`、`yarn add @cloudnative/health`、`bun add @cloudnative/health`

## README

# 云卫生

[![](https://img.shields.io/badge/homepage-CloudNativeJS-blue.svg)](http://cloudnativejs.io/) [![npm](https://img.shields.io/npm/v/@cloudnative/health)](https://www.npmjs.org/package/@cloudnative/health) [![Build status](https://secure.travis-ci.org/CloudNativeJS/cloud-health.svg?branch=master)](http://travis-ci.org/CloudNativeJS/cloud-health) [![Coverage Status](https://coveralls.io/repos/github/CloudNativeJS/cloud-health/badge.svg?branch=master)](https://coveralls.io/github/CloudNativeJS/cloud-health?branch=master) [![Greenkeeper](https://badges.greenkeeper.io/CloudNativeJS/cloud-health.svg)](https://greenkeeper.io/) [![Module LTS Adopted](https://img.shields.io/badge/Module%20LTS-Adopted-brightgreen.svg?style=flat)](http://github.com/CloudNativeJS/ModuleLTS) [![IBM Support](https://img.shields.io/badge/IBM%20Support-Frameworks-brightgreen.svg?style=flat)](http://ibm.biz/node-support)

一个核心库,为Node.js应用程序提供应用程序生命周期处理和活性检查.

云卫生被使用 [云健康连接](http://github.com/CloudNativeJS/cloud-health-connect) 以提供用于Express.js、Loopback和其他框架的连接中软件,其中提供:

-   启动检查
-   准备状态检查
-   活性检查
-   关闭处理

与库伯内特斯和"云"创始人合用.

## 利用云卫生

Cloud Health允许您注册在申请的三个阶段执行的承诺,并允许您拨打 `getLivenessStatus()`, (中文(简体) ), `getReadinessStatus()`,或组合 `getStatus()` 以返回确定申请是否有效的承诺 `STARTING`, (中文(简体) ), `UP`, (中文(简体) ), `DOWN`, (中文(简体) ), `STOPPING` 或者说 `STOPPED`。 。 。 .

1.  启动“ 启动” 时  
    承诺,作为 `StartupCheck` 并使用 `registerStartupCheck` 在启动时执行,并可用于执行任何在应用程序准备好之前必须完成的代码。 如果启动承诺还在履行中,请 `getLivenessStatus()`, (中文(简体) ), `getReadinessStatus()`,以及 `getStatus()`ưμ㼯a `STARTING`一旦承诺完成, `DOWN` 如果出现任何失败,或者“活性”和/或“准备”承诺随后得到履行.
    
2.  在"生活"的运行时间  
    承诺,作为 `LivenessCheck` 并使用 `registerLivenessCheck` 调用时执行 `getLiveness()` 财务报告和审定财务报表 `getStatus()`。这些可以用来确保应用程序仍在正确运行。 如果没有承诺,或成功, `UP` 报告。 如果有任何失败, `DOWN` 报告.
    
3.  准备时间  
    承诺,作为 `ReadinessCheck` 并使用 `registerReadinessCheck` 调用时执行 `getReadinessStatus()` 财务报告和审定财务报表 `getStatus()`。这些可以用来确保应用程序仍在正确运行。 如果没有承诺,或成功, `UP` 报告。 如果有任何失败, `DOWN` 报告.
    
4.  在一个 `SIGTERM` 关闭信号  
    承诺,作为 `ShutdownCheck` 并使用 `registerShutdownCheck` 当进程收到时执行 `SIGTERM` 能够清理应用程序使用的任何资源。 如果关闭承诺还在兑现,呼吁 `getReadinessStatus()`, (中文(简体) ), `getLivenessStatus()` 财务报告和审定财务报表 `getStatus()` 返回时 `STOPPING`一旦承诺完成, `STOPPED` 报告.
    

#### 准备与活性

现场检查和准备状态检查以同样方式执行,但独立执行(根据对 `getLivenessStatus()` 或者说 `getReadinessStatus()`)或一起(根据对 `getStatus()`) (中文(简体) ).

活性与准备状态的区别意在达到目的: 准备状态应用来表示申请是否"准备"接受请求,活性应用来表示申请是否"活性"(vs. 在一个应该重启的状态下).

### 使用 Cloud 健康与节点.js

1.  安装 :

```js
npm install @cloudnative/health
```

2.  设置健康检查器:

```js
const health = require('@cloudnative/health');
let healthcheck = new health.HealthChecker();
```

3.  注册启动检查承诺 :

```js
const startPromise = () => new Promise(function (resolve, _reject) {
  setTimeout(function () {
    console.log('STARTED!');
    resolve();
  }, 10);
});
let startCheck = new health.StartupCheck("startCheck", startPromise);
healthcheck.registerStartupCheck(startCheck);
```

请注意: `registerStartupCheck()` 并返回一个可以用来等待承诺实现的许诺.

4.  注册活性检查承诺 :

```js
const livePromise = () => new Promise(function (resolve, _reject) {
  setTimeout(function () {
    console.log('ALIVE!');
    resolve();
  }, 10);
});
let liveCheck = new health.LivenessCheck("liveCheck", livePromise);
healthcheck.registerLivenessCheck(liveCheck);
```

5.  注册关闭检查承诺 :

```js
const shutdownPromise = () => new Promise(function (resolve, _reject) {
  setTimeout(function () {
    console.log('DONE!');
    resolve();
  }, 10);
});
let shutdownCheck = new health.ShutdownCheck("shutdownCheck", shutdownPromise);
healthcheck.registerShutdownCheck(shutdownCheck);
```

6.  检查申请状态 :

```js
healthcheck.getStatus()
.then((result) => console.log('STATUS: ' + JSON.stringify(result)));
```

请注意: [云健康连接](http://github.com/CloudNativeJS/cloud-health-connect) 提供了用于Express.js,Looperback和其他框架的Connect Middleware,将结果暴露为Cloud Foundry和Kubernetes基于云的我们的终点.

### 使用有打字符的云健康

云健康模块在TypeScript中被创建,因此提供出框TypeScript支持.

## 模块长期支助政策

本单元采用 [模块长期支持(LTS)](http://github.com/CloudNativeJS/ModuleLTS) 政策,其终止日期如下:

| 模块版本 | 发布日期 | 最低额 | 电话 | 状态 |
| --- | --- | --- | --- | --- |
| 2.x.x (中文(简体) ) | 2019年5月 (中文(简体) ) | 2021年4月 (中文(简体) ) |  | 当前 |
| 1.x.x (中文(简体) ) | 2018年7月 (中文(简体) ) | 2019年12月号 |  | 长期 |

## 许可证

[阿帕奇 - 2.0](https://npmcn.com/package/%40cloudnative/health/LICENSE)

## 常见问题

### @cloudnative/health 是什么？

用于建设健康检查终点的功能模块注意：该包已被作者标记为弃用——Package no longer supported\. Contact Support at https://www\.npmjs\.com/support for more info\.

### 如何安装 @cloudnative/health？

在项目目录运行 npm install @cloudnative/health，或使用 pnpm add / yarn add / bun add。

### @cloudnative/health 支持 TypeScript 吗？

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

### @cloudnative/health 支持 ESM 还是 CommonJS？

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

### @cloudnative/health 可以商用吗？

@cloudnative/health 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @cloudnative/health 的下载量有多少？

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

### @cloudnative/health 还在维护吗？

最新版本 2\.1\.2 发布于 2019/12/05（6 年前）；至今共发布 7 个版本，其中过去 12 个月发布了 0 个；首次发布于 2018/07/19。作者已将其标记为弃用，新项目建议寻找替代方案。

