Contract that all health checks must implement. Defines the required properties and methods for a health check.
import { BaseCheck } from '@adonisjs/health'import { Result } from '@adonisjs/health'import type { HealthCheckContract, HealthCheckResult } from '@adonisjs/health/types'class DatabaseCheck extends BaseCheck implements HealthCheckContract { name = 'Database connection check' cacheDuration = 60 // Cache for 60 seconds async run(): Promise<HealthCheckResult> { try { // Check database connection await database.raw('SELECT 1') return Result.ok('Database connection is healthy') .setMetaData({ connectionPool: database.pool.numUsed() }) } catch (error) { return Result.failed('Database connection failed', error) } }}// Usageconst dbCheck = new DatabaseCheck()const result = await dbCheck.run() Copy
import { BaseCheck } from '@adonisjs/health'import { Result } from '@adonisjs/health'import type { HealthCheckContract, HealthCheckResult } from '@adonisjs/health/types'class DatabaseCheck extends BaseCheck implements HealthCheckContract { name = 'Database connection check' cacheDuration = 60 // Cache for 60 seconds async run(): Promise<HealthCheckResult> { try { // Check database connection await database.raw('SELECT 1') return Result.ok('Database connection is healthy') .setMetaData({ connectionPool: database.pool.numUsed() }) } catch (error) { return Result.failed('Database connection failed', error) } }}// Usageconst dbCheck = new DatabaseCheck()const result = await dbCheck.run()
A unique name for the check
Optional
Whether to cache the results or not. The value must be specified in seconds
The method to execute to perform the check
Contract that all health checks must implement. Defines the required properties and methods for a health check.
Example