2.0.2 • Published 10 days ago

grpc-health-check v2.0.2

Weekly downloads
2,271
License
Apache-2.0
Repository
github
Last release
10 days ago

grpc-health-check

Health check client and service for use with gRPC-node.

Background

This package provides an implementation of the gRPC Health Checking Protocol service, as described in gRFC L106.

Installation

Use the package manager npm to install grpc-health-check.

npm install grpc-health-check

Usage

Server

Any gRPC-node server can use grpc-health-check to adhere to the gRPC Health Checking Protocol. The following shows how this package can be added to a pre-existing gRPC server.

// Import package
import { HealthImplementation, ServingStatusMap } from 'grpc-health-check';

// Define service status map. Key is the service name, value is the corresponding status.
// By convention, the empty string '' key represents that status of the entire server.
const statusMap = {
  'ServiceFoo': 'SERVING',
  'ServiceBar': 'NOT_SERVING',
  '': 'NOT_SERVING',
};

// Construct the service implementation
const healthImpl = new HealthImplementation(statusMap);

healthImpl.addToServer(server);

// When ServiceBar comes up
healthImpl.setStatus('serviceBar', 'SERVING');

Congrats! Your server now allows any client to run a health check against it.

Client

Any gRPC-node client can use the service object exported by grpc-health-check to generate clients that can make health check requests.

Command Line Usage

The absolute path to health.proto can be obtained on the command line with node -p 'require("grpc-health-check").protoPath'.

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

Apache License 2.0

2.0.2

10 days ago

2.0.1

3 months ago

2.0.0

8 months ago

1.8.0

4 years ago

1.7.0

5 years ago

1.6.6

7 years ago

1.6.0

7 years ago

1.6.0-pre1

7 years ago

1.4.1

7 years ago

1.3.9

7 years ago

1.3.8

7 years ago

1.4.0-pre1

7 years ago

1.3.7

7 years ago

1.3.2

7 years ago

1.3.1

7 years ago

1.3.1-pre1

7 years ago

1.3.0

7 years ago

1.2.4

7 years ago

1.2.3

7 years ago

1.2.0

7 years ago

1.2.0-pre1

7 years ago

1.1.2

7 years ago

1.1.1

7 years ago

1.1.0

7 years ago

1.1.0-pre1

7 years ago

1.0.1-pre1

8 years ago

1.0.0

8 years ago

1.0.0-pre2

8 years ago

1.0.0-pre1

8 years ago