@healthzkit/mongo package provides HealthAdapter helpers for the official mongodb driver and mongoose. Successful checks run an admin ping and return ok with metadata.latencyMs plus any fields from an optional metadata hook; failures return fail with the caught error.
Install the adapter package and one client library:
mongodb and mongoose are optional peers — install the driver you use.
Package entrypoints
@healthzkit/mongo-mongodbAdapter,mongooseAdapter, and their option types.@healthzkit/mongo/mongodb-mongodbAdapteronly.@healthzkit/mongo/mongoose-mongooseAdapteronly.
Shared options
Both factories shareBaseMongoOptions:
mongodbAdapter (mongodb)
Peer: mongodb >= 6 or >= 7.
Each check runs client.db("admin").command({ ping: 1 }) and records round-trip latency.
Connection string
PassconnectionString (and optional mongoOptions). The adapter lazily imports mongodb, creates a shared MongoClient, and connects once. Concurrent checks reuse the same client.
Call adapter.close() when the adapter owns the client (created from connectionString) to shut down the internal connection. close() is a no-op when you pass an existing client.
Existing client
Passclient as an existing MongoClient. The adapter calls connect() once and reuses that client across checks.
mongooseAdapter (mongoose)
Peer: mongoose >= 8 or >= 9.
Each check runs db.admin().command({ ping: 1 }) on the resolved connection. The adapter supports a Mongoose instance (conn.db) or a mongoose Connection (conn.connection.db).
Connection string
PassconnectionString (and optional mongooseOptions). The adapter dynamically imports mongoose, calls mongoose.connect() once, and reuses that instance.
Existing connection
Passconnection as your app’s mongoose instance or a Connection. If readyState is not 1 (connected), the adapter awaits connection.asPromise() before pinging.
Wiring into createHealthKit
Treat each factory’s return value as adapter on a check (same as a hand-written { check() { ... } } object):
schedule on the check if you want cached readiness results instead of pinging MongoDB on every probe (see Scheduling).