1.0.1 • Published 4 years ago

@visiperf/visigrpc v1.0.1

Weekly downloads
1
License
-
Repository
github
Last release
4 years ago

gRPC helpers, middlewares ... for Node.JS

Package @visiperf/visigrpc provide some functions to help you making a gRPC server. Errors logged on Sentry, HTTP status to gRPC code, ... Everything is made to assist you :)

Table of contents

Install

Use npm to install this package.

npm install --save @visiperf/visigrpc

Usage

Status

Error

The error(code, msg) function is used to return a gRPC error and log it into Sentry.

const grpc = require('grpc');
const sentry = require('@sentry/node');
const status = require('@visiperf/visigrpc/status');

sentry.init({ ... });

...

// your gRPC server implementation ...

...

function sayHello(call, callback) {
  callback(status.error(grpc.status.UNIMPLEMENTED, 'implement me'));
}
IMPORTANT : Only UNKNOWN, INTERNAL and DATA_LOSS errors will be reported in Sentry !

gRPC code from HTTP status

If you make an HTTP request, you can use the grpcCodeFromHttpStatus(status) func to convert HTTP status code in response to gRPC code.

const status = require('@visiperf/visigrpc/status');

let code = status.grpcCodeFromHttpStatus(403); // http status -> 403 (Forbidden)

// code -> 7 (grpc.status.PERMISSION_DENIED)

References