@hasna/uptime 0.1.22 → 0.1.24
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/CHANGELOG.md +22 -0
- package/NOTICE +1 -1
- package/README.md +4 -1
- package/THIRD_PARTY_NOTICES.md +4 -1
- package/dist/api.d.ts +1 -0
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js +271 -56
- package/dist/checks.d.ts +4 -0
- package/dist/checks.d.ts.map +1 -1
- package/dist/checks.js +26 -3
- package/dist/cli/index.js +301 -60
- package/dist/cloud-plan.d.ts +3 -1
- package/dist/cloud-plan.d.ts.map +1 -1
- package/dist/cloud-plan.js +5 -2
- package/dist/imports.d.ts +5 -1
- package/dist/imports.d.ts.map +1 -1
- package/dist/imports.js +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +277 -58
- package/dist/mcp/index.js +225 -51
- package/dist/service.d.ts +23 -1
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +225 -51
- package/dist/store.d.ts +6 -1
- package/dist/store.d.ts.map +1 -1
- package/dist/store.js +79 -12
- package/dist/types.d.ts +3 -0
- package/dist/types.d.ts.map +1 -1
- package/docs/aws-deployment-runbook.md +16 -10
- package/docs/aws-runtime-security.md +2 -1
- package/docs/cloud-source-of-truth.md +13 -10
- package/docs/deployment-metadata.example.json +1 -1
- package/docs/operational-tracking.md +2 -2
- package/infra/aws/terraform.tfvars.example +1 -1
- package/infra/aws/variables.tf +1 -1
- package/package.json +1 -1
package/dist/checks.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checks.d.ts","sourceRoot":"","sources":["../src/checks.ts"],"names":[],"mappings":"AACA,OAAa,EAAE,KAAK,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAG3D,OAAO,EAAyF,KAAK,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AACvJ,OAAO,KAAK,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,gBAAgB,EAA4B,wBAAwB,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE/K,MAAM,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAC1F,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,uBAAuB,CAAC,CAAC;AACvF,MAAM,MAAM,iBAAiB,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAC;AACvF,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,EAAE,wBAAwB,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAEvG,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,iBAAiB,CAAC,EAAE,qBAAqB,CAAC;IAC1C,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACrC,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,wBAAwB;IACvC,GAAG,EAAE,GAAG,CAAC;IACT,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE;QACP,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC;KACf,CAAC;IACF,MAAM,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,GAAG,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;CACzF;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,cAAc,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACxC,UAAU,CAAC,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,IAAI,CAAC;IACjF,SAAS,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9E,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,wBAAsB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,kBAAkB,CAAC,
|
|
1
|
+
{"version":3,"file":"checks.d.ts","sourceRoot":"","sources":["../src/checks.ts"],"names":[],"mappings":"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"}
|
package/dist/checks.js
CHANGED
|
@@ -236,8 +236,9 @@ async function runMonitorCheck(monitor, options = {}) {
|
|
|
236
236
|
}
|
|
237
237
|
if (monitor.kind === "browser_page")
|
|
238
238
|
return runBrowserPageCheck(monitor, { fetch: options.fetch, runner: options.browserPage });
|
|
239
|
-
if (monitor.kind === "tcp")
|
|
240
|
-
return runTcpCheck(monitor);
|
|
239
|
+
if (monitor.kind === "tcp") {
|
|
240
|
+
return options.hostedTargetPolicy ? runHostedTcpCheck(monitor, { resolveHost: options.resolveHost }) : runTcpCheck(monitor);
|
|
241
|
+
}
|
|
241
242
|
return { status: "down", latencyMs: null, error: `unsupported monitor kind: ${monitor.kind ?? "unknown"}` };
|
|
242
243
|
}
|
|
243
244
|
async function runHttpCheck(monitor, fetchImpl = fetch) {
|
|
@@ -349,9 +350,30 @@ async function runHostedHttpCheck(monitor, options = {}) {
|
|
|
349
350
|
async function runTcpCheck(monitor) {
|
|
350
351
|
if (!monitor.host || !monitor.port)
|
|
351
352
|
return { status: "down", latencyMs: null, error: "missing host or port" };
|
|
353
|
+
return runTcpSocket(monitor.host, monitor.port, monitor.timeoutMs);
|
|
354
|
+
}
|
|
355
|
+
async function runHostedTcpCheck(monitor, options = {}) {
|
|
356
|
+
if (!monitor.host || !monitor.port)
|
|
357
|
+
return { status: "down", latencyMs: null, error: "missing host or port" };
|
|
358
|
+
const resolver = options.resolveHost ?? resolveHostedHost;
|
|
359
|
+
try {
|
|
360
|
+
const addresses = normalizeResolvedAddresses(await resolver(normalizeHostedHost(monitor.host)));
|
|
361
|
+
assertHostedResolvedAddressesAllowed(monitor.host, addresses, "TCP resolved address");
|
|
362
|
+
const address = addresses[0];
|
|
363
|
+
return runTcpSocket(address.address, monitor.port, monitor.timeoutMs, address.family);
|
|
364
|
+
} catch (error) {
|
|
365
|
+
return {
|
|
366
|
+
status: "down",
|
|
367
|
+
latencyMs: null,
|
|
368
|
+
statusCode: null,
|
|
369
|
+
error: error instanceof Error ? error.message : String(error)
|
|
370
|
+
};
|
|
371
|
+
}
|
|
372
|
+
}
|
|
373
|
+
async function runTcpSocket(host, port, timeoutMs, family) {
|
|
352
374
|
const started = performance.now();
|
|
353
375
|
return new Promise((resolve) => {
|
|
354
|
-
const socket = net2.createConnection({ host
|
|
376
|
+
const socket = net2.createConnection({ host, port, timeout: timeoutMs, family });
|
|
355
377
|
let settled = false;
|
|
356
378
|
const finish = (result) => {
|
|
357
379
|
if (settled)
|
|
@@ -660,6 +682,7 @@ export {
|
|
|
660
682
|
runTcpCheck,
|
|
661
683
|
runMonitorCheck,
|
|
662
684
|
runHttpCheck,
|
|
685
|
+
runHostedTcpCheck,
|
|
663
686
|
runHostedHttpCheck,
|
|
664
687
|
runBrowserPageCheck,
|
|
665
688
|
normalizeHttpTargetPolicyEvidence,
|