@entwico/health-probes 1.1.0 → 1.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/checks.d.ts CHANGED
@@ -1,9 +1,9 @@
1
1
  import type { HealthCheck, HealthCheckResult } from './types.js';
2
2
  export declare class HealthChecks {
3
3
  private readonly registered;
4
+ private run;
4
5
  register(name: string, check: () => Promise<HealthCheckResult | void> | HealthCheckResult | void): () => void;
5
6
  register(check: HealthCheck): () => void;
6
- private run;
7
7
  runAll(): Promise<Record<string, HealthCheckResult>>;
8
8
  runRequired(): Promise<boolean>;
9
9
  getChecks(): HealthCheck[];
@@ -1 +1 @@
1
- {"version":3,"file":"checks.d.ts","sourceRoot":"","sources":["../src/checks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAOjE,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkC;IAM7D,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,GAAG,iBAAiB,GAAG,IAAI,GAAG,MAAM,IAAI;IAC7G,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,IAAI;YAqB1B,GAAG;IA8BX,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAkBpD,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAqBrC,SAAS,IAAI,WAAW,EAAE;CAG3B;AAED,eAAO,MAAM,MAAM,cAAqB,CAAC"}
1
+ {"version":3,"file":"checks.d.ts","sourceRoot":"","sources":["../src/checks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAOjE,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkC;YAK/C,GAAG;IA+BjB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,GAAG,iBAAiB,GAAG,IAAI,GAAG,MAAM,IAAI;IAC7G,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,IAAI;IAqBlC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAkBpD,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAwBrC,SAAS,IAAI,WAAW,EAAE;CAG3B;AAED,eAAO,MAAM,MAAM,cAAqB,CAAC"}
package/dist/checks.js CHANGED
@@ -1,16 +1,6 @@
1
1
  const DEFAULT_TIMEOUT = 5000;
2
2
  export class HealthChecks {
3
3
  registered = new Map();
4
- register(nameOrCheck, checkFn) {
5
- const check = typeof nameOrCheck === 'string' ? { name: nameOrCheck, check: checkFn } : nameOrCheck;
6
- if (this.registered.has(check.name)) {
7
- console.warn(`[health] overwriting existing check "${check.name}"`);
8
- }
9
- this.registered.set(check.name, check);
10
- return () => {
11
- this.registered.delete(check.name);
12
- };
13
- }
14
4
  async run(check) {
15
5
  const timeout = check.timeout ?? DEFAULT_TIMEOUT;
16
6
  const start = performance.now();
@@ -33,9 +23,19 @@ export class HealthChecks {
33
23
  return { status: 'unhealthy', latency, error: errorMessage };
34
24
  }
35
25
  }
26
+ register(nameOrCheck, checkFn) {
27
+ const check = typeof nameOrCheck === 'string' ? { name: nameOrCheck, check: checkFn } : nameOrCheck;
28
+ if (this.registered.has(check.name)) {
29
+ console.warn(`[health] overwriting existing check "${check.name}"`);
30
+ }
31
+ this.registered.set(check.name, check);
32
+ return () => {
33
+ this.registered.delete(check.name);
34
+ };
35
+ }
36
36
  async runAll() {
37
37
  const results = {};
38
- const checks = [...this.registered.values()];
38
+ const checks = this.registered.values().toArray();
39
39
  const checkPromises = checks.map(async (check) => {
40
40
  const result = await this.run(check);
41
41
  results[check.name] = result;
@@ -44,7 +44,10 @@ export class HealthChecks {
44
44
  return results;
45
45
  }
46
46
  async runRequired() {
47
- const requiredChecks = [...this.registered.values()].filter((check) => !check.optional);
47
+ const requiredChecks = this.registered
48
+ .values()
49
+ .filter((check) => !check.optional)
50
+ .toArray();
48
51
  if (requiredChecks.length === 0) {
49
52
  return true;
50
53
  }
@@ -56,7 +59,7 @@ export class HealthChecks {
56
59
  return results.every(Boolean);
57
60
  }
58
61
  getChecks() {
59
- return [...this.registered.values()];
62
+ return this.registered.values().toArray();
60
63
  }
61
64
  }
62
65
  export const checks = new HealthChecks();
@@ -1 +1 @@
1
- {"version":3,"file":"checks.js","sourceRoot":"","sources":["../src/checks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checks.js","sourceRoot":"","sources":["../src/checks.ts"],"names":[],"mappings":"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"}
package/dist/probes.d.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  import type { HealthProbe, HealthStatusProbe } from './types.js';
2
2
  export declare class HealthProbes {
3
3
  private state;
4
- private createProbeResponse;
5
4
  readonly live: HealthProbe;
6
5
  readonly startup: HealthProbe;
7
6
  readonly ready: HealthProbe;
8
7
  readonly health: HealthStatusProbe;
8
+ private createProbeResponse;
9
9
  }
10
10
  export declare const probes: HealthProbes;
11
11
  //# sourceMappingURL=probes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"probes.d.ts","sourceRoot":"","sources":["../src/probes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAmC,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAKlG,qBAAa,YAAY;IACvB,OAAO,CAAC,KAAK,CAIX;IAEF,OAAO,CAAC,mBAAmB;IAO3B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAaxB;IAEF,QAAQ,CAAC,OAAO,EAAE,WAAW,CAa3B;IAEF,QAAQ,CAAC,KAAK,EAAE,WAAW,CAazB;IAEF,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAiChC;CACH;AAED,eAAO,MAAM,MAAM,cAAqB,CAAC"}
1
+ {"version":3,"file":"probes.d.ts","sourceRoot":"","sources":["../src/probes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAmC,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAKlG,qBAAa,YAAY;IACvB,OAAO,CAAC,KAAK,CAIX;IAEF,QAAQ,CAAC,IAAI,EAAE,WAAW,CAaxB;IAEF,QAAQ,CAAC,OAAO,EAAE,WAAW,CAa3B;IAEF,QAAQ,CAAC,KAAK,EAAE,WAAW,CAazB;IAEF,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAiChC;IAEF,OAAO,CAAC,mBAAmB;CAM5B;AAED,eAAO,MAAM,MAAM,cAAqB,CAAC"}
package/dist/probes.js CHANGED
@@ -5,12 +5,6 @@ export class HealthProbes {
5
5
  startup: false,
6
6
  ready: false,
7
7
  };
8
- createProbeResponse(result) {
9
- return new Response(result.passing ? 'OK' : 'Service Unavailable', {
10
- status: result.passing ? 200 : 503,
11
- headers: { 'Content-Type': 'text/plain' },
12
- });
13
- }
14
8
  live = {
15
9
  enable: () => {
16
10
  this.state.live = true;
@@ -18,8 +12,8 @@ export class HealthProbes {
18
12
  disable: () => {
19
13
  this.state.live = false;
20
14
  },
21
- get: async () => {
22
- return { passing: this.state.live };
15
+ get: () => {
16
+ return Promise.resolve({ passing: this.state.live });
23
17
  },
24
18
  response: async () => {
25
19
  return this.createProbeResponse(await this.live.get());
@@ -32,8 +26,8 @@ export class HealthProbes {
32
26
  disable: () => {
33
27
  this.state.startup = false;
34
28
  },
35
- get: async () => {
36
- return { passing: this.state.startup };
29
+ get: () => {
30
+ return Promise.resolve({ passing: this.state.startup });
37
31
  },
38
32
  response: async () => {
39
33
  return this.createProbeResponse(await this.startup.get());
@@ -82,6 +76,12 @@ export class HealthProbes {
82
76
  });
83
77
  },
84
78
  };
79
+ createProbeResponse(result) {
80
+ return new Response(result.passing ? 'OK' : 'Service Unavailable', {
81
+ status: result.passing ? 200 : 503,
82
+ headers: { 'Content-Type': 'text/plain' },
83
+ });
84
+ }
85
85
  }
86
86
  export const probes = new HealthProbes();
87
87
  //# sourceMappingURL=probes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"probes.js","sourceRoot":"","sources":["../src/probes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"probes.js","sourceRoot":"","sources":["../src/probes.ts"],"names":[],"mappings":"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"}
package/dist/server.d.ts CHANGED
@@ -1,9 +1,9 @@
1
1
  import type { HealthServerOptions } from './types.js';
2
2
  export declare class HealthServer {
3
3
  private instance;
4
+ private handleRequest;
4
5
  start(options?: HealthServerOptions): void;
5
6
  stop(): Promise<void>;
6
- private handleRequest;
7
7
  }
8
8
  export declare const server: HealthServer;
9
9
  //# sourceMappingURL=server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAc,MAAM,YAAY,CAAC;AAKlE,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAuB;IAKvC,KAAK,CAAC,OAAO,GAAE,mBAAwB,GAAG,IAAI;IAqC9C,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAmBP,aAAa;CAc5B;AAED,eAAO,MAAM,MAAM,cAAqB,CAAC"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAc,MAAM,YAAY,CAAC;AAKlE,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAuB;YAEzB,aAAa;IAuB3B,KAAK,CAAC,OAAO,GAAE,mBAAwB,GAAG,IAAI;IAqC9C,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAkBtB;AAED,eAAO,MAAM,MAAM,cAAqB,CAAC"}
package/dist/server.js CHANGED
@@ -3,6 +3,25 @@ import { K8sPaths } from './paths.js';
3
3
  import { probes } from './probes.js';
4
4
  export class HealthServer {
5
5
  instance = null;
6
+ async handleRequest(pathname, paths) {
7
+ switch (pathname) {
8
+ case paths.live: {
9
+ return probes.live.response();
10
+ }
11
+ case paths.startup: {
12
+ return probes.startup.response();
13
+ }
14
+ case paths.ready: {
15
+ return probes.ready.response();
16
+ }
17
+ case paths.health: {
18
+ return probes.health.response();
19
+ }
20
+ default: {
21
+ return new Response('Not Found', { status: 404 });
22
+ }
23
+ }
24
+ }
6
25
  start(options = {}) {
7
26
  if (this.instance) {
8
27
  return;
@@ -47,20 +66,6 @@ export class HealthServer {
47
66
  });
48
67
  });
49
68
  }
50
- async handleRequest(pathname, paths) {
51
- switch (pathname) {
52
- case paths.live:
53
- return probes.live.response();
54
- case paths.startup:
55
- return probes.startup.response();
56
- case paths.ready:
57
- return probes.ready.response();
58
- case paths.health:
59
- return probes.health.response();
60
- default:
61
- return new Response('Not Found', { status: 404 });
62
- }
63
- }
64
69
  }
65
70
  export const server = new HealthServer();
66
71
  //# sourceMappingURL=server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@entwico/health-probes",
3
- "version": "1.1.0",
3
+ "version": "1.1.2",
4
4
  "description": "Kubernetes-style health check probes for Node.js — framework-agnostic /livez, /readyz, /startupz, and /healthz endpoints",
5
5
  "license": "MIT",
6
6
  "author": "admin@entwico.com",
@@ -35,39 +35,28 @@
35
35
  "type": "git",
36
36
  "url": "https://github.com/entwico/health-probes"
37
37
  },
38
- "scripts": {
39
- "build": "tsc --project tsconfig.build.json",
40
- "clean": "rm -rf dist",
41
- "prebuild": "npm run clean",
42
- "prepublishOnly": "npm run build && npm run test && npm run lint",
43
- "validate": "run-s lint typecheck test",
44
- "lint": "eslint . --report-unused-disable-directives --max-warnings 0",
45
- "typecheck": "tsc",
46
- "test": "npx tsx --test --experimental-test-coverage src/index.test.ts",
47
- "prepare": "husky",
48
- "semantic-release": "semantic-release"
49
- },
50
38
  "publishConfig": {
51
39
  "access": "public",
52
40
  "provenance": true
53
41
  },
54
42
  "devDependencies": {
55
- "@commitlint/cli": "^20.4.1",
56
- "@commitlint/config-conventional": "^20.4.1",
57
- "@semantic-release/changelog": "^6.0.3",
58
- "@semantic-release/git": "^10.0.1",
43
+ "@changesets/cli": "^2.31.0",
44
+ "@entwico/eslint-config": "^2.0.7",
59
45
  "@types/node": "^25.2.0",
60
- "@typescript-eslint/eslint-plugin": "^8.54.0",
61
- "eslint": "^9.39.2",
62
- "eslint-config-prettier": "^10.1.8",
63
- "eslint-import-resolver-typescript": "^4.4.4",
64
- "eslint-plugin-import": "^2.32.0",
65
- "eslint-plugin-prettier": "^5.5.5",
66
- "husky": "^9.1.7",
67
- "npm-run-all": "^4.1.5",
68
- "semantic-release": "^25.0.3",
46
+ "eslint": "^10.6.0",
69
47
  "tsx": "^4.21.0",
70
- "typescript": "^5.9.3",
71
- "typescript-eslint": "^8.54.0"
48
+ "typescript": "^6.0.3"
49
+ },
50
+ "scripts": {
51
+ "build": "tsc --project tsconfig.build.json",
52
+ "clean": "rm -rf dist",
53
+ "prebuild": "pnpm clean",
54
+ "validate": "pnpm lint && pnpm typecheck && pnpm test",
55
+ "lint": "eslint --cache .",
56
+ "lint:fix": "pnpm lint --fix",
57
+ "typecheck": "tsc",
58
+ "test": "tsx --test --experimental-test-coverage src/index.test.ts",
59
+ "ci:version": "changeset version && pnpm install --no-frozen-lockfile",
60
+ "ci:publish": "changeset publish"
72
61
  }
73
- }
62
+ }