
Security News
Nx npm Packages Compromised in Supply Chain Attack Weaponizing AI CLI Tools
Malicious Nx npm versions stole secrets and wallet info using AI CLI tools; Socket’s AI scanner detected the supply chain attack and flagged the malware.
@betsys-nestjs/health-check
Advanced tools
Library for implementation of standardized health endpoint in NestJS applications.
Package | Version |
---|---|
@nestjs/common | ^10.0.0 |
@nestjs/core | ^10.0.0 |
@nestjs/microservices | ^10.0.0 |
@nestjs/swagger | ^7.0.0 |
@nestjs/terminus | ^10.0.0 |
reflect-metadata | <1.0.0 |
rxjs | ^7.0.0 |
Import HealthCheckModule
to your health module with using .forRoot function and register all your health indicators:
@Module({
imports: [
HealthCheckModule.forRoot({
imports: [
PostgresqlModule.forFeature(connectionPostgresFeatureConfig()),
MongoModule.forFeature(connectionMongoFeatureConfig()),
RedisModule.forFeature(connectionRedisFeatureConfig()),
ElasticModule.forFeature(connectionElasticFeatureConfig()),
],
indicators: [
{
factory: (connection: PostgresConnection) => new PostgresqlHealthIndicator(connection, 'postgres'),
inject: [getPostgresConnectionToken()],
},
{
factory: (connection: MongoConnection) => new MongoHealthIndicator(connection, 'mongo'),
inject: [getMongoConnectionToken()],
},
{
factory: (connection: ElasticConnection) => new ElasticHealthIndicator(connection, 'elastic'),
inject: [getElasticConnectionToken()],
},
{
factory: (client: RedisClient) => new RedisHealthIndicator(client, 'redis'),
inject: [getRedisClientToken()],
probeType: ProbeTypes.Liveness,
},
],
kubernetesProbesStyle: true,
}),
],
})
export class HealthModule {
}
probeType
- type of health indicator probe. Default is Readiness
.kubernetesProbesStyle
- if true, health check will be registered as Kubernetes probes endpoints and divided by their probeType
(/health/readiness
, /health/liveness
, and /health/startup
). If false, single health check endpoint will be registered (/health
) containing all indicators of Readiness
type.To create custom health indicator, you need to create a new class that extends from HealthIndicator
and implement getHealth method.
import { Injectable } from '@nestjs/common';
import { HealthCheckError, HealthIndicator, HealthIndicatorResult } from '@betsys/nestjs-health-check';
@Injectable()
export class SimpleHealthIndicator extends HealthIndicator {
constructor(
private readonly someThirdPartyOperation: SomeThirdPartyOperation,
private readonly key: string,
) {
super();
}
async isHealthy(): Promise<HealthIndicatorResult> {
let isHealthy = false;
try {
const result = await this.someThirdPartyOperation.execute();
isHealthy = result.isValid();
} catch (error) {
const typesError = error as Error;
const status = this.getStatus(this.key, false, { error: typesError.message || error });
throw new HealthCheckError(typesError.message || 'Unknown error', status);
}
if (!isHealthy) {
const status = this.getStatus(this.key, false);
throw new HealthCheckError('Simple service check failed!', status);
}
return this.getStatus(this.key, true);
}
}
FAQs
Betsys NestJS module for health-check implementation
The npm package @betsys-nestjs/health-check receives a total of 0 weekly downloads. As such, @betsys-nestjs/health-check popularity was classified as not popular.
We found that @betsys-nestjs/health-check demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 9 open source maintainers collaborating on the project.
Did you know?
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.
Security News
Malicious Nx npm versions stole secrets and wallet info using AI CLI tools; Socket’s AI scanner detected the supply chain attack and flagged the malware.
Security News
CISA’s 2025 draft SBOM guidance adds new fields like hashes, licenses, and tool metadata to make software inventories more actionable.
Security News
A clarification on our recent research investigating 60 malicious Ruby gems.