add back health module to server

This commit is contained in:
Amruth Pillai
2023-06-07 20:45:21 +02:00
parent 30fd283898
commit 96eca65ed0
6 changed files with 41 additions and 2 deletions

View File

@ -1,6 +1,6 @@
{
"name": "reactive-resume",
"version": "3.7.4",
"version": "3.7.5",
"private": true,
"scripts": {
"dev": "env-cmd --silent cross-var cross-env VERSION=$npm_package_version turbo run dev",

3
pnpm-lock.yaml generated
View File

@ -326,6 +326,9 @@ importers:
'@types/passport':
specifier: ^1.0.12
version: 1.0.12
axios:
specifier: ^1.4.0
version: 1.4.0
bcryptjs:
specifier: ^2.4.3
version: 2.4.3

View File

@ -22,6 +22,7 @@
"@nestjs/terminus": "^9.2.2",
"@nestjs/typeorm": "^9.0.1",
"@types/passport": "^1.0.12",
"axios": "^1.4.0",
"bcryptjs": "^2.4.3",
"cache-manager": "^5.2.2",
"class-transformer": "^0.5.1",
@ -50,7 +51,6 @@
"devDependencies": {
"@nestjs/cli": "^9.5.0",
"@nestjs/schematics": "^9.2.0",
"schema": "workspace:*",
"@types/bcryptjs": "^2.4.2",
"@types/cookie-parser": "^1.4.3",
"@types/express": "^4.17.17",
@ -64,6 +64,7 @@
"eslint-plugin-unused-imports": "^2.0.0",
"prettier": "^2.8.8",
"rimraf": "^5.0.1",
"schema": "workspace:*",
"source-map-support": "^0.5.21",
"ts-loader": "^9.4.3",
"ts-node": "^10.9.1",

View File

@ -9,6 +9,7 @@ import { ConfigModule } from './config/config.module';
import { DatabaseModule } from './database/database.module';
import { AllExceptionsFilter } from './filters/all-exceptions.filter';
import { FontsModule } from './fonts/fonts.module';
import { HealthModule } from './health/health.module';
import { IntegrationsModule } from './integrations/integrations.module';
import { MailModule } from './mail/mail.module';
import { PrinterModule } from './printer/printer.module';
@ -32,6 +33,7 @@ import { UsersModule } from './users/users.module';
FontsModule,
IntegrationsModule,
PrinterModule,
HealthModule,
],
providers: [
{

View File

@ -0,0 +1,22 @@
import { Controller, Get } from '@nestjs/common';
import { HealthCheck, HealthCheckService, HttpHealthIndicator, TypeOrmHealthIndicator } from '@nestjs/terminus';
@Controller('health')
export class HealthController {
constructor(
private health: HealthCheckService,
private http: HttpHealthIndicator,
private db: TypeOrmHealthIndicator
) {}
@Get()
@HealthCheck()
check() {
return this.health.check([
() => this.http.pingCheck('app', 'https://rxresu.me'),
() => this.http.pingCheck('blog', 'https://blog.rxresu.me'),
() => this.http.pingCheck('docs', 'https://docs.rxresu.me'),
() => this.db.pingCheck('database'),
]);
}
}

View File

@ -0,0 +1,11 @@
import { HttpModule } from '@nestjs/axios';
import { Module } from '@nestjs/common';
import { TerminusModule } from '@nestjs/terminus';
import { HealthController } from './health.controller';
@Module({
imports: [TerminusModule, HttpModule],
controllers: [HealthController],
})
export class HealthModule {}