Introducing Socket Firewall: Free, Proactive Protection for Your Software Supply Chain.Learn More
Socket
Book a DemoInstallSign in
Socket

@brunnerlivio/terminus

Package Overview
Dependencies
Maintainers
1
Versions
29
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@brunnerlivio/terminus

Nest - modern, fast, powerful node.js web framework (@terminus)

latest
Source
npmnpm
Version
6.5.2
Version published
Maintainers
1
Created
Source

Nest Logo

A progressive Node.js framework for building efficient and scalable server-side applications, heavily inspired by Angular.

NPM Version Package License NPM Downloads Travis Linux Discord Backers on Open Collective Sponsors on Open Collective

Description

This module contains integrated healthchecks for Nest. These healthchecks run in an internal execution manager based on the Terminus-package.

Installation

In order to install @nestjs/terminus you must install @godaddy/terminus - the library which will be used to execute the healthchecks.

@nestjs/terminus integrates with a lot of cool technologies, such as typeorm, grpc, mongodb, and many more! In most cases you do not want to install all the optional dependencies which would be needed for these integrations. Therefore we highly recommend to use the --no-optional option. In case you have missed a dependency, @nestjs/terminus will throw an error and prompt you to install the required dependency. So you will only install what is actually required!


npm install --save @nestjs/terminus @godaddy/terminus --no-optional

Usage

Import the Terminus module with the following options for a healthcheck with a database health inidcator.


const getTerminusOptions = (
  db: TypeOrmHealthIndicator,
): TerminusModuleOptions => ({
  endpoints: [
    {
      // The health check will be available with /health
      url: '/health',
      // All the indicator which will be checked when requesting /health
      healthIndicators: [
        // Set the timeout for a response to 300ms
        async () => db.pingCheck('database', { timeout: 300 })
      ],
    },
  ],
});

@Module({
  imports:[
    // Make sure TypeOrmModule is available in the module context
    TypeOrmModule.forRoot({ ... }),
    TerminusModule.forRootAsync({
      // Inject the TypeOrmHealthIndicator provided by nestjs/terminus
      inject: [TypeOrmHealthIndicator],
      useFactory: db => getTerminusOptions(db),
    }),
  ],
})
export class HealthModule { }

If everything is set up correctly, you can access the healthcheck on http://localhost:3000/health.


{
  "status": "ok",
  "info": {
    "database": {
      "status": "up"
    }
  }
}
    

For more information, see docs or internal documentation. You can find further samples in the samples/ folder of this repository.

Support

Nest is an MIT-licensed open source project. It can grow thanks to the sponsors and support by the amazing backers. If you'd like to join them, please read more here.

Stay in touch

License

Nest is MIT licensed.

FAQs

Package last updated on 15 Jul 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts