checkly 7.0.1 → 7.1.0-prerelease-36f4883
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/ai-context/checkly.rules.md +44 -0
- package/dist/ai-context/context.js +5 -0
- package/dist/ai-context/context.js.map +1 -1
- package/dist/ai-context/skills/monitoring/SKILL.md +45 -1
- package/dist/commands/import/plan.js +2 -1
- package/dist/commands/import/plan.js.map +1 -1
- package/dist/commands/pw-test.d.ts +2 -1
- package/dist/commands/pw-test.js +7 -3
- package/dist/commands/pw-test.js.map +1 -1
- package/dist/constants.d.ts +2 -2
- package/dist/constants.js +3 -2
- package/dist/constants.js.map +1 -1
- package/dist/constructs/api-assertion.d.ts +3 -3
- package/dist/constructs/check-codegen.d.ts +2 -0
- package/dist/constructs/check-codegen.js +8 -0
- package/dist/constructs/check-codegen.js.map +1 -1
- package/dist/constructs/check-group-v1.js +4 -4
- package/dist/constructs/check-group-v1.js.map +1 -1
- package/dist/constructs/construct.js +6 -2
- package/dist/constructs/construct.js.map +1 -1
- package/dist/constructs/dns-assertion.d.ts +1 -1
- package/dist/constructs/heartbeat-monitor.js +2 -5
- package/dist/constructs/heartbeat-monitor.js.map +1 -1
- package/dist/constructs/icmp-assertion-codegen.d.ts +3 -0
- package/dist/constructs/icmp-assertion-codegen.js +22 -0
- package/dist/constructs/icmp-assertion-codegen.js.map +1 -0
- package/dist/constructs/icmp-assertion.d.ts +56 -0
- package/dist/constructs/icmp-assertion.js +61 -0
- package/dist/constructs/icmp-assertion.js.map +1 -0
- package/dist/constructs/icmp-monitor-codegen.d.ts +13 -0
- package/dist/constructs/icmp-monitor-codegen.js +38 -0
- package/dist/constructs/icmp-monitor-codegen.js.map +1 -0
- package/dist/constructs/icmp-monitor.d.ts +82 -0
- package/dist/constructs/icmp-monitor.js +47 -0
- package/dist/constructs/icmp-monitor.js.map +1 -0
- package/dist/constructs/icmp-request-codegen.d.ts +4 -0
- package/dist/constructs/icmp-request-codegen.js +28 -0
- package/dist/constructs/icmp-request-codegen.js.map +1 -0
- package/dist/constructs/icmp-request.d.ts +37 -0
- package/dist/constructs/icmp-request.js +3 -0
- package/dist/constructs/icmp-request.js.map +1 -0
- package/dist/constructs/incidentio-alert-channel.js +1 -1
- package/dist/constructs/index.d.ts +3 -0
- package/dist/constructs/index.js +3 -0
- package/dist/constructs/index.js.map +1 -1
- package/dist/constructs/internal/assertion-codegen.d.ts +4 -1
- package/dist/constructs/internal/assertion-codegen.js +5 -2
- package/dist/constructs/internal/assertion-codegen.js.map +1 -1
- package/dist/constructs/internal/assertion.d.ts +3 -2
- package/dist/constructs/internal/assertion.js +4 -2
- package/dist/constructs/internal/assertion.js.map +1 -1
- package/dist/constructs/msteams-alert-channel.js +48 -3
- package/dist/constructs/msteams-alert-channel.js.map +1 -1
- package/dist/constructs/multi-step-check.js +2 -2
- package/dist/constructs/multi-step-check.js.map +1 -1
- package/dist/constructs/project.js +0 -3
- package/dist/constructs/project.js.map +1 -1
- package/dist/constructs/tcp-monitor.d.ts +1 -1
- package/dist/constructs/telegram-alert-channel.js +8 -1
- package/dist/constructs/telegram-alert-channel.js.map +1 -1
- package/dist/constructs/url-assertion.d.ts +1 -1
- package/dist/reporters/util.js +67 -0
- package/dist/reporters/util.js.map +1 -1
- package/dist/services/check-parser/faux-package.d.ts +1 -0
- package/dist/services/check-parser/faux-package.js +5 -4
- package/dist/services/check-parser/faux-package.js.map +1 -1
- package/dist/services/check-parser/package-files/resolver.js +58 -23
- package/dist/services/check-parser/package-files/resolver.js.map +1 -1
- package/dist/services/check-parser/package-files/workspace.js +4 -5
- package/dist/services/check-parser/package-files/workspace.js.map +1 -1
- package/dist/services/check-parser/parser.d.ts +8 -8
- package/dist/services/check-parser/parser.js +114 -80
- package/dist/services/check-parser/parser.js.map +1 -1
- package/dist/services/project-parser.js.map +1 -1
- package/dist/testing/fixture-sandbox.js +7 -2
- package/dist/testing/fixture-sandbox.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/oclif.manifest.json +8 -1
- package/package.json +2 -2
|
@@ -7,7 +7,7 @@ exports.CheckGroupV1 = void 0;
|
|
|
7
7
|
const node_path_1 = __importDefault(require("node:path"));
|
|
8
8
|
const glob_1 = require("glob");
|
|
9
9
|
const construct_diagnostics_1 = require("./construct-diagnostics");
|
|
10
|
-
const constants_1 =
|
|
10
|
+
const constants_1 = require("../constants");
|
|
11
11
|
const alert_channel_subscription_1 = require("./alert-channel-subscription");
|
|
12
12
|
const browser_check_1 = require("./browser-check");
|
|
13
13
|
const check_group_ref_1 = require("./check-group-ref");
|
|
@@ -107,11 +107,11 @@ class CheckGroupV1 extends construct_1.Construct {
|
|
|
107
107
|
this.browserChecks = props.browserChecks;
|
|
108
108
|
const fileAbsolutePath = project_1.Session.checkFileAbsolutePath;
|
|
109
109
|
if (props.browserChecks?.testMatch) {
|
|
110
|
-
this.__addChecks(fileAbsolutePath, props.browserChecks.testMatch, constants_1.
|
|
110
|
+
this.__addChecks(fileAbsolutePath, props.browserChecks.testMatch, constants_1.CheckTypes.BROWSER);
|
|
111
111
|
}
|
|
112
112
|
this.multiStepChecks = props.multiStepChecks;
|
|
113
113
|
if (props.multiStepChecks?.testMatch) {
|
|
114
|
-
this.__addChecks(fileAbsolutePath, props.multiStepChecks.testMatch, constants_1.
|
|
114
|
+
this.__addChecks(fileAbsolutePath, props.multiStepChecks.testMatch, constants_1.CheckTypes.MULTI_STEP);
|
|
115
115
|
}
|
|
116
116
|
project_1.Session.registerConstruct(this);
|
|
117
117
|
this.__addSubscriptions();
|
|
@@ -169,7 +169,7 @@ class CheckGroupV1 extends construct_1.Construct {
|
|
|
169
169
|
// the browserChecks props inherited from the group are applied in BrowserCheck.constructor()
|
|
170
170
|
};
|
|
171
171
|
const checkLogicalId = project_1.Session.relativePosixPath(filepath);
|
|
172
|
-
if (checkType === constants_1.
|
|
172
|
+
if (checkType === constants_1.CheckTypes.BROWSER) {
|
|
173
173
|
new browser_check_1.BrowserCheck(checkLogicalId, props);
|
|
174
174
|
}
|
|
175
175
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check-group-v1.js","sourceRoot":"","sources":["../../src/constructs/check-group-v1.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,+BAA2B;AAc3B,mEAAqI;AACrI,
|
|
1
|
+
{"version":3,"file":"check-group-v1.js","sourceRoot":"","sources":["../../src/constructs/check-group-v1.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.isContent = exports.isEntrypoint = exports.Construct = void 0;
|
|
7
7
|
const node_path_1 = __importDefault(require("node:path"));
|
|
8
|
+
const constants_1 = require("../constants");
|
|
9
|
+
const construct_diagnostics_1 = require("./construct-diagnostics");
|
|
8
10
|
const project_1 = require("./project");
|
|
9
11
|
const ref_1 = require("./ref");
|
|
10
12
|
/**
|
|
@@ -82,9 +84,11 @@ class Construct {
|
|
|
82
84
|
* @param diagnostics The Diagnostics instance that any issues should be added to.
|
|
83
85
|
* @returns A Promise that resolves when validation is complete.
|
|
84
86
|
*/
|
|
85
|
-
// eslint-disable-next-line
|
|
87
|
+
// eslint-disable-next-line require-await
|
|
86
88
|
async validate(diagnostics) {
|
|
87
|
-
|
|
89
|
+
if (!constants_1.LOGICAL_ID_PATTERN.test(this.logicalId)) {
|
|
90
|
+
diagnostics.add(new construct_diagnostics_1.InvalidPropertyValueDiagnostic('logicalId', new Error(`"${this.logicalId}" contains invalid characters. Only A-Z, a-z, 0-9, _, -, /, #, and . are allowed.`)));
|
|
91
|
+
}
|
|
88
92
|
}
|
|
89
93
|
/**
|
|
90
94
|
* Bundles the Construct into a representation that can be synthesized. By
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"construct.js","sourceRoot":"","sources":["../../src/constructs/construct.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;
|
|
1
|
+
{"version":3,"file":"construct.js","sourceRoot":"","sources":["../../src/constructs/construct.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,4CAAiD;AACjD,mEAAwE;AAExE,uCAAmC;AACnC,+BAA2B;AAkC3B;;;;;;GAMG;AACH,MAAsB,SAAS;IAC7B,2CAA2C;IAC3C,IAAI,CAAQ;IACZ,yDAAyD;IACzD,SAAS,CAAQ;IACjB,2DAA2D;IAC3D,UAAU,CAAkB;IAC5B,wDAAwD;IACxD,MAAM,CAAS;IACf,kEAAkE;IAClE,qBAAqB,CAAS;IAE9B;;;;;;;OAOG;IACH,YAAa,IAAY,EAAE,SAAiB,EAAE,UAA4B,EAAE,MAAgB;QAC1F,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,IAAI,CAAA;QAC5B,IAAI,CAAC,qBAAqB,GAAG,iBAAO,CAAC,qBAAqB,CAAA;QAC1D,iBAAO,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAA;IACvC,CAAC;IAOD;;;;OAIG;IACH,GAAG;QACD,OAAO,SAAG,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACjC,CAAC;IAED;;;;;OAKG;IACH,oBAAoB;QAClB,OAAO,KAAK,CAAA;IACd,CAAC;IAED;;;;;;;OAOG;IACH,sBAAsB,CAAE,WAAmB;QACzC,IAAI,mBAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YACjC,OAAO,WAAW,CAAA;QACpB,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,gGAAgG,CAAC,CAAA;QACnH,CAAC;QAED,OAAO,mBAAI,CAAC,IAAI,CAAC,mBAAI,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE,WAAW,CAAC,CAAA;IACzE,CAAC;IAED;;;;;;OAMG;IACH,yCAAyC;IACzC,KAAK,CAAC,QAAQ,CAAE,WAAwB;QACtC,IAAI,CAAC,8BAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7C,WAAW,CAAC,GAAG,CAAC,IAAI,sDAA8B,CAChD,WAAW,EACX,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC,SAAS,mFAAmF,CAAC,CACjH,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACH,yCAAyC;IACzC,KAAK,CAAC,MAAM;QACV,OAAO,IAAI,CAAA;IACb,CAAC;CASF;AAhHD,8BAgHC;AAWD;;;;;GAKG;AACH,SAAgB,YAAY,CAAE,KAAU;IACtC,OAAO,YAAY,IAAI,MAAM,CAAC,KAAK,CAAC,CAAA;AACtC,CAAC;AAFD,oCAEC;AAWD;;;;;GAKG;AACH,SAAgB,SAAS,CAAE,KAAU;IACnC,OAAO,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,CAAA;AACnC,CAAC;AAFD,8BAEC"}
|
|
@@ -26,7 +26,7 @@ export declare class DnsAssertionBuilder {
|
|
|
26
26
|
* Creates an assertion builder for DNS response time.
|
|
27
27
|
* @returns A numeric assertion builder for response time in milliseconds.
|
|
28
28
|
*/
|
|
29
|
-
static responseTime(): NumericAssertionBuilder<DnsAssertionSource>;
|
|
29
|
+
static responseTime(): NumericAssertionBuilder<DnsAssertionSource, string>;
|
|
30
30
|
/**
|
|
31
31
|
* Creates an assertion builder for the answer in common plain text format.
|
|
32
32
|
* @param regex An optional regular expression with at least one capture
|
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.HeartbeatCheck = exports.HeartbeatMonitor = void 0;
|
|
7
4
|
const monitor_1 = require("./monitor");
|
|
8
5
|
const project_1 = require("./project");
|
|
9
6
|
const luxon_1 = require("luxon");
|
|
10
|
-
const constants_1 =
|
|
7
|
+
const constants_1 = require("../constants");
|
|
11
8
|
function _customPeriodGraceValidation(heartbeat) {
|
|
12
9
|
const now = luxon_1.DateTime.now();
|
|
13
10
|
const addedTimePeriod = now.plus({ [heartbeat.periodUnit]: heartbeat.period });
|
|
@@ -52,7 +49,7 @@ class HeartbeatMonitor extends monitor_1.Monitor {
|
|
|
52
49
|
synthesize() {
|
|
53
50
|
return {
|
|
54
51
|
...super.synthesize(),
|
|
55
|
-
checkType: constants_1.
|
|
52
|
+
checkType: constants_1.CheckTypes.HEARTBEAT,
|
|
56
53
|
heartbeat: this.heartbeat,
|
|
57
54
|
};
|
|
58
55
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heartbeat-monitor.js","sourceRoot":"","sources":["../../src/constructs/heartbeat-monitor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"heartbeat-monitor.js","sourceRoot":"","sources":["../../src/constructs/heartbeat-monitor.ts"],"names":[],"mappings":";;;AAAA,uCAAiD;AACjD,uCAAmC;AACnC,iCAAgC;AAChC,4CAAyC;AA8BzC,SAAS,4BAA4B,CAAE,SAAoB;IACzD,MAAM,GAAG,GAAG,gBAAQ,CAAC,GAAG,EAAE,CAAA;IAC1B,MAAM,eAAe,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,CAAA;IAC9E,MAAM,gBAAgB,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,CAAC,CAAA;IAE7E,MAAM,qBAAqB,GAAG,GAAG,CAAA;IACjC,MAAM,kBAAkB,GAAG,EAAE,CAAA;IAE7B,IACE,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,IAAI,GAAG,qBAAqB;WAC3D,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,OAAO,GAAG,kBAAkB,EACpE,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;IACpE,CAAC;IAED,IAAI,gBAAgB,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,IAAI,GAAG,qBAAqB,EAAE,CAAC;QACpE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;IACtD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAa,gBAAiB,SAAQ,iBAAO;IAC3C,SAAS,CAAW;IAEpB;;;;;;OAMG;IACH,YAAa,SAAiB,EAAE,KAA4B;QAC1D,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;QAEvB,4BAA4B,CAAC,KAAK,CAAC,CAAA;QACnC,IAAI,CAAC,SAAS,GAAG;YACf,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B,CAAA;QAED,iBAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA;QAC/B,IAAI,CAAC,gBAAgB,EAAE,CAAA;IACzB,CAAC;IAED,QAAQ;QACN,OAAO,oBAAoB,IAAI,CAAC,SAAS,EAAE,CAAA;IAC7C,CAAC;IAED,UAAU;QACR,OAAO;YACL,GAAG,KAAK,CAAC,UAAU,EAAE;YACrB,SAAS,EAAE,sBAAU,CAAC,SAAS;YAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAA;IACH,CAAC;CACF;AApCD,4CAoCC;AAKqB,0CAAc"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.valueForIcmpAssertion = void 0;
|
|
4
|
+
const assertion_codegen_1 = require("./internal/assertion-codegen");
|
|
5
|
+
function valueForIcmpAssertion(genfile, assertion) {
|
|
6
|
+
genfile.namedImport('IcmpAssertionBuilder', 'checkly/constructs');
|
|
7
|
+
switch (assertion.source) {
|
|
8
|
+
case 'LATENCY':
|
|
9
|
+
return (0, assertion_codegen_1.valueForNumericAssertion)('IcmpAssertionBuilder', 'latency', assertion, {
|
|
10
|
+
hasProperty: true,
|
|
11
|
+
});
|
|
12
|
+
case 'JSON_RESPONSE':
|
|
13
|
+
return (0, assertion_codegen_1.valueForGeneralAssertion)('IcmpAssertionBuilder', 'jsonResponse', assertion, {
|
|
14
|
+
hasProperty: true,
|
|
15
|
+
hasRegex: false,
|
|
16
|
+
});
|
|
17
|
+
default:
|
|
18
|
+
throw new Error(`Unsupported ICMP assertion source ${assertion.source}`);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
exports.valueForIcmpAssertion = valueForIcmpAssertion;
|
|
22
|
+
//# sourceMappingURL=icmp-assertion-codegen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icmp-assertion-codegen.js","sourceRoot":"","sources":["../../src/constructs/icmp-assertion-codegen.ts"],"names":[],"mappings":";;;AACA,oEAAiG;AAGjG,SAAgB,qBAAqB,CAAE,OAAsB,EAAE,SAAwB;IACrF,OAAO,CAAC,WAAW,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,CAAA;IAEjE,QAAQ,SAAS,CAAC,MAAM,EAAE,CAAC;QACzB,KAAK,SAAS;YACZ,OAAO,IAAA,4CAAwB,EAAC,sBAAsB,EAAE,SAAS,EAAE,SAAS,EAAE;gBAC5E,WAAW,EAAE,IAAI;aAClB,CAAC,CAAA;QACJ,KAAK,eAAe;YAClB,OAAO,IAAA,4CAAwB,EAAC,sBAAsB,EAAE,cAAc,EAAE,SAAS,EAAE;gBACjF,WAAW,EAAE,IAAI;gBACjB,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAA;QACJ;YACE,MAAM,IAAI,KAAK,CAAC,qCAAqC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAA;IAC5E,CAAC;AACH,CAAC;AAhBD,sDAgBC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { Assertion as CoreAssertion, NumericAssertionBuilder, GeneralAssertionBuilder } from './internal/assertion';
|
|
2
|
+
type IcmpAssertionSource = 'LATENCY' | 'JSON_RESPONSE';
|
|
3
|
+
export type IcmpAssertion = CoreAssertion<IcmpAssertionSource>;
|
|
4
|
+
export type IcmpLatencyProperty = 'avg' | 'min' | 'max' | 'stdDev';
|
|
5
|
+
/**
|
|
6
|
+
* Builder class for creating ICMP monitor assertions.
|
|
7
|
+
* Provides methods to create assertions for ICMP ping responses.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```typescript
|
|
11
|
+
* // Latency assertions
|
|
12
|
+
* IcmpAssertionBuilder.latency('avg').lessThan(100)
|
|
13
|
+
* IcmpAssertionBuilder.latency('max').lessThan(200)
|
|
14
|
+
* IcmpAssertionBuilder.latency('stdDev').lessThan(50)
|
|
15
|
+
*
|
|
16
|
+
* // JSON response assertions
|
|
17
|
+
* IcmpAssertionBuilder.jsonResponse('$.packetLoss').lessThan(10)
|
|
18
|
+
* IcmpAssertionBuilder.jsonResponse('$.packetsReceived').greaterThan(8)
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export declare class IcmpAssertionBuilder {
|
|
22
|
+
/**
|
|
23
|
+
* Creates an assertion builder for ICMP latency metrics.
|
|
24
|
+
* @param property The latency property to assert against:
|
|
25
|
+
* - `avg`: Average round-trip time in milliseconds
|
|
26
|
+
* - `min`: Minimum round-trip time in milliseconds
|
|
27
|
+
* - `max`: Maximum round-trip time in milliseconds
|
|
28
|
+
* - `stdDev`: Standard deviation of round-trip times
|
|
29
|
+
* @returns A numeric assertion builder for the specified latency metric.
|
|
30
|
+
*/
|
|
31
|
+
static latency(property: IcmpLatencyProperty): NumericAssertionBuilder<IcmpAssertionSource, IcmpLatencyProperty>;
|
|
32
|
+
/**
|
|
33
|
+
* Creates an assertion builder for the JSON formatted response.
|
|
34
|
+
* Use JSONPath expressions to access specific response fields.
|
|
35
|
+
*
|
|
36
|
+
* Available fields include:
|
|
37
|
+
* - `$.hostname`: The target host that was pinged
|
|
38
|
+
* - `$.resolvedIp`: The resolved IP address (if host was a domain name)
|
|
39
|
+
* - `$.ipFamily`: IP family used ('IPv4' or 'IPv6')
|
|
40
|
+
* - `$.pingCount`: Number of pings configured
|
|
41
|
+
* - `$.packetsSent`: Number of ICMP echo requests sent
|
|
42
|
+
* - `$.packetsReceived`: Number of ICMP echo replies received
|
|
43
|
+
* - `$.packetLoss`: Percentage of packets lost (0-100)
|
|
44
|
+
* - `$.latency.avg`: Average round-trip time in milliseconds
|
|
45
|
+
* - `$.latency.min`: Minimum round-trip time in milliseconds
|
|
46
|
+
* - `$.latency.max`: Maximum round-trip time in milliseconds
|
|
47
|
+
* - `$.latency.stdDev`: Standard deviation of round-trip times
|
|
48
|
+
* - `$.pingResults[*].rtt`: Round-trip time for each ping
|
|
49
|
+
* - `$.pingResults[*].ttl`: Time-to-live for each ping
|
|
50
|
+
*
|
|
51
|
+
* @param property Optional JSONPath to specific property (e.g., '$.packetLoss')
|
|
52
|
+
* @returns A general assertion builder for the JSON formatted response.
|
|
53
|
+
*/
|
|
54
|
+
static jsonResponse(property?: string): GeneralAssertionBuilder<IcmpAssertionSource>;
|
|
55
|
+
}
|
|
56
|
+
export {};
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IcmpAssertionBuilder = void 0;
|
|
4
|
+
const assertion_1 = require("./internal/assertion");
|
|
5
|
+
/**
|
|
6
|
+
* Builder class for creating ICMP monitor assertions.
|
|
7
|
+
* Provides methods to create assertions for ICMP ping responses.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```typescript
|
|
11
|
+
* // Latency assertions
|
|
12
|
+
* IcmpAssertionBuilder.latency('avg').lessThan(100)
|
|
13
|
+
* IcmpAssertionBuilder.latency('max').lessThan(200)
|
|
14
|
+
* IcmpAssertionBuilder.latency('stdDev').lessThan(50)
|
|
15
|
+
*
|
|
16
|
+
* // JSON response assertions
|
|
17
|
+
* IcmpAssertionBuilder.jsonResponse('$.packetLoss').lessThan(10)
|
|
18
|
+
* IcmpAssertionBuilder.jsonResponse('$.packetsReceived').greaterThan(8)
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
class IcmpAssertionBuilder {
|
|
22
|
+
/**
|
|
23
|
+
* Creates an assertion builder for ICMP latency metrics.
|
|
24
|
+
* @param property The latency property to assert against:
|
|
25
|
+
* - `avg`: Average round-trip time in milliseconds
|
|
26
|
+
* - `min`: Minimum round-trip time in milliseconds
|
|
27
|
+
* - `max`: Maximum round-trip time in milliseconds
|
|
28
|
+
* - `stdDev`: Standard deviation of round-trip times
|
|
29
|
+
* @returns A numeric assertion builder for the specified latency metric.
|
|
30
|
+
*/
|
|
31
|
+
static latency(property) {
|
|
32
|
+
return new assertion_1.NumericAssertionBuilder('LATENCY', property);
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Creates an assertion builder for the JSON formatted response.
|
|
36
|
+
* Use JSONPath expressions to access specific response fields.
|
|
37
|
+
*
|
|
38
|
+
* Available fields include:
|
|
39
|
+
* - `$.hostname`: The target host that was pinged
|
|
40
|
+
* - `$.resolvedIp`: The resolved IP address (if host was a domain name)
|
|
41
|
+
* - `$.ipFamily`: IP family used ('IPv4' or 'IPv6')
|
|
42
|
+
* - `$.pingCount`: Number of pings configured
|
|
43
|
+
* - `$.packetsSent`: Number of ICMP echo requests sent
|
|
44
|
+
* - `$.packetsReceived`: Number of ICMP echo replies received
|
|
45
|
+
* - `$.packetLoss`: Percentage of packets lost (0-100)
|
|
46
|
+
* - `$.latency.avg`: Average round-trip time in milliseconds
|
|
47
|
+
* - `$.latency.min`: Minimum round-trip time in milliseconds
|
|
48
|
+
* - `$.latency.max`: Maximum round-trip time in milliseconds
|
|
49
|
+
* - `$.latency.stdDev`: Standard deviation of round-trip times
|
|
50
|
+
* - `$.pingResults[*].rtt`: Round-trip time for each ping
|
|
51
|
+
* - `$.pingResults[*].ttl`: Time-to-live for each ping
|
|
52
|
+
*
|
|
53
|
+
* @param property Optional JSONPath to specific property (e.g., '$.packetLoss')
|
|
54
|
+
* @returns A general assertion builder for the JSON formatted response.
|
|
55
|
+
*/
|
|
56
|
+
static jsonResponse(property) {
|
|
57
|
+
return new assertion_1.GeneralAssertionBuilder('JSON_RESPONSE', property);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
exports.IcmpAssertionBuilder = IcmpAssertionBuilder;
|
|
61
|
+
//# sourceMappingURL=icmp-assertion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icmp-assertion.js","sourceRoot":"","sources":["../../src/constructs/icmp-assertion.ts"],"names":[],"mappings":";;;AAAA,oDAAmH;AAUnH;;;;;;;;;;;;;;;GAeG;AACH,MAAa,oBAAoB;IAC/B;;;;;;;;OAQG;IACH,MAAM,CAAC,OAAO,CAAE,QAA6B;QAC3C,OAAO,IAAI,mCAAuB,CAA2C,SAAS,EAAE,QAAQ,CAAC,CAAA;IACnG,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,MAAM,CAAC,YAAY,CAAE,QAAiB;QACpC,OAAO,IAAI,mCAAuB,CAAsB,eAAe,EAAE,QAAQ,CAAC,CAAA;IACpF,CAAC;CACF;AAvCD,oDAuCC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Codegen, Context } from './internal/codegen';
|
|
2
|
+
import { MonitorResource } from './monitor-codegen';
|
|
3
|
+
import { IcmpRequest } from './icmp-request';
|
|
4
|
+
export interface IcmpMonitorResource extends MonitorResource {
|
|
5
|
+
checkType: 'ICMP';
|
|
6
|
+
request: IcmpRequest;
|
|
7
|
+
degradedPacketLossThreshold?: number;
|
|
8
|
+
maxPacketLossThreshold?: number;
|
|
9
|
+
}
|
|
10
|
+
export declare class IcmpMonitorCodegen extends Codegen<IcmpMonitorResource> {
|
|
11
|
+
describe(resource: IcmpMonitorResource): string;
|
|
12
|
+
gencode(logicalId: string, resource: IcmpMonitorResource, context: Context): void;
|
|
13
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IcmpMonitorCodegen = void 0;
|
|
4
|
+
const codegen_1 = require("./internal/codegen");
|
|
5
|
+
const sourcegen_1 = require("../sourcegen");
|
|
6
|
+
const monitor_codegen_1 = require("./monitor-codegen");
|
|
7
|
+
const icmp_request_codegen_1 = require("./icmp-request-codegen");
|
|
8
|
+
const construct = 'IcmpMonitor';
|
|
9
|
+
class IcmpMonitorCodegen extends codegen_1.Codegen {
|
|
10
|
+
describe(resource) {
|
|
11
|
+
return `ICMP Monitor: ${resource.name}`;
|
|
12
|
+
}
|
|
13
|
+
gencode(logicalId, resource, context) {
|
|
14
|
+
const filePath = context.filePath('resources/icmp-monitors', resource.name, {
|
|
15
|
+
tags: resource.tags,
|
|
16
|
+
unique: true,
|
|
17
|
+
});
|
|
18
|
+
const file = this.program.generatedConstructFile(filePath.fullPath);
|
|
19
|
+
file.namedImport(construct, 'checkly/constructs');
|
|
20
|
+
file.section((0, sourcegen_1.expr)((0, sourcegen_1.ident)(construct), builder => {
|
|
21
|
+
builder.new(builder => {
|
|
22
|
+
builder.string(logicalId);
|
|
23
|
+
builder.object(builder => {
|
|
24
|
+
builder.value('request', (0, icmp_request_codegen_1.valueForIcmpRequest)(this.program, file, context, resource.request));
|
|
25
|
+
if (resource.degradedPacketLossThreshold !== undefined) {
|
|
26
|
+
builder.number('degradedPacketLossThreshold', resource.degradedPacketLossThreshold);
|
|
27
|
+
}
|
|
28
|
+
if (resource.maxPacketLossThreshold !== undefined) {
|
|
29
|
+
builder.number('maxPacketLossThreshold', resource.maxPacketLossThreshold);
|
|
30
|
+
}
|
|
31
|
+
(0, monitor_codegen_1.buildMonitorProps)(this.program, file, builder, resource, context);
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
}));
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
exports.IcmpMonitorCodegen = IcmpMonitorCodegen;
|
|
38
|
+
//# sourceMappingURL=icmp-monitor-codegen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icmp-monitor-codegen.js","sourceRoot":"","sources":["../../src/constructs/icmp-monitor-codegen.ts"],"names":[],"mappings":";;;AAAA,gDAAqD;AACrD,4CAA0C;AAC1C,uDAAsE;AAEtE,iEAA4D;AAS5D,MAAM,SAAS,GAAG,aAAa,CAAA;AAE/B,MAAa,kBAAmB,SAAQ,iBAA4B;IAClE,QAAQ,CAAE,QAA6B;QACrC,OAAO,iBAAiB,QAAQ,CAAC,IAAI,EAAE,CAAA;IACzC,CAAC;IAED,OAAO,CAAE,SAAiB,EAAE,QAA6B,EAAE,OAAgB;QACzE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,yBAAyB,EAAE,QAAQ,CAAC,IAAI,EAAE;YAC1E,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,MAAM,EAAE,IAAI;SACb,CAAC,CAAA;QAEF,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAEnE,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAA;QAEjD,IAAI,CAAC,OAAO,CAAC,IAAA,gBAAI,EAAC,IAAA,iBAAK,EAAC,SAAS,CAAC,EAAE,OAAO,CAAC,EAAE;YAC5C,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;gBACpB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;gBACzB,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;oBACvB,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,IAAA,0CAAmB,EAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAA;oBAE5F,IAAI,QAAQ,CAAC,2BAA2B,KAAK,SAAS,EAAE,CAAC;wBACvD,OAAO,CAAC,MAAM,CAAC,6BAA6B,EAAE,QAAQ,CAAC,2BAA2B,CAAC,CAAA;oBACrF,CAAC;oBAED,IAAI,QAAQ,CAAC,sBAAsB,KAAK,SAAS,EAAE,CAAC;wBAClD,OAAO,CAAC,MAAM,CAAC,wBAAwB,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAA;oBAC3E,CAAC;oBAED,IAAA,mCAAiB,EAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;gBACnE,CAAC,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAC,CAAA;IACL,CAAC;CACF;AAlCD,gDAkCC"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { Monitor, MonitorProps } from './monitor';
|
|
2
|
+
import { Diagnostics } from './diagnostics';
|
|
3
|
+
import { IcmpRequest } from './icmp-request';
|
|
4
|
+
export interface IcmpMonitorProps extends MonitorProps {
|
|
5
|
+
/**
|
|
6
|
+
* Determines the request that the monitor is going to run.
|
|
7
|
+
*/
|
|
8
|
+
request: IcmpRequest;
|
|
9
|
+
/**
|
|
10
|
+
* The percentage of packet loss where the monitor should be considered
|
|
11
|
+
* degraded.
|
|
12
|
+
*
|
|
13
|
+
* @defaultValue 10
|
|
14
|
+
* @minimum 0
|
|
15
|
+
* @maximum 100
|
|
16
|
+
* @example
|
|
17
|
+
* ```typescript
|
|
18
|
+
* degradedPacketLossThreshold: 10 // Alert when 10% or more packets are lost
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
degradedPacketLossThreshold?: number;
|
|
22
|
+
/**
|
|
23
|
+
* The percentage of packet loss where the monitor should be considered
|
|
24
|
+
* failing.
|
|
25
|
+
*
|
|
26
|
+
* @defaultValue 20
|
|
27
|
+
* @minimum 0
|
|
28
|
+
* @maximum 100
|
|
29
|
+
* @example
|
|
30
|
+
* ```typescript
|
|
31
|
+
* maxPacketLossThreshold: 20 // Fail if 20% or more packets are lost
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
maxPacketLossThreshold?: number;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Creates an ICMP Monitor
|
|
38
|
+
*/
|
|
39
|
+
export declare class IcmpMonitor extends Monitor {
|
|
40
|
+
request: IcmpRequest;
|
|
41
|
+
degradedPacketLossThreshold?: number;
|
|
42
|
+
maxPacketLossThreshold?: number;
|
|
43
|
+
/**
|
|
44
|
+
* Constructs the ICMP Monitor instance
|
|
45
|
+
*
|
|
46
|
+
* @param logicalId unique project-scoped resource name identification
|
|
47
|
+
* @param props configuration properties
|
|
48
|
+
*
|
|
49
|
+
* {@link https://www.checklyhq.com/docs/constructs/icmp-monitor/ Read more in the docs}
|
|
50
|
+
*/
|
|
51
|
+
constructor(logicalId: string, props: IcmpMonitorProps);
|
|
52
|
+
describe(): string;
|
|
53
|
+
validate(diagnostics: Diagnostics): Promise<void>;
|
|
54
|
+
synthesize(): {
|
|
55
|
+
checkType: string;
|
|
56
|
+
request: IcmpRequest;
|
|
57
|
+
degradedPacketLossThreshold: number | undefined;
|
|
58
|
+
maxPacketLossThreshold: number | undefined;
|
|
59
|
+
doubleCheck: boolean;
|
|
60
|
+
name: string;
|
|
61
|
+
activated: boolean | undefined;
|
|
62
|
+
muted: boolean | undefined;
|
|
63
|
+
shouldFail: boolean | undefined;
|
|
64
|
+
locations: (keyof import("..").Region)[] | undefined;
|
|
65
|
+
privateLocations: undefined;
|
|
66
|
+
tags: string[] | undefined;
|
|
67
|
+
frequency: number | undefined;
|
|
68
|
+
frequencyOffset: number | undefined;
|
|
69
|
+
groupId: import("./ref").Ref | null;
|
|
70
|
+
retryStrategy: import("./retry-strategy").LinearRetryStrategy | import("./retry-strategy").ExponentialRetryStrategy | import("./retry-strategy").FixedRetryStrategy | import("./retry-strategy").SingleRetryRetryStrategy | null | undefined;
|
|
71
|
+
alertSettings: import("./alert-escalation-policy").AlertEscalation | undefined;
|
|
72
|
+
useGlobalAlertSettings: boolean | undefined;
|
|
73
|
+
runParallel: boolean | undefined;
|
|
74
|
+
triggerIncident: {
|
|
75
|
+
serviceId: import("./ref").Ref;
|
|
76
|
+
severity: "MINOR" | "MEDIUM" | "MAJOR" | "CRITICAL";
|
|
77
|
+
name: string;
|
|
78
|
+
description: string;
|
|
79
|
+
notifySubscribers: boolean;
|
|
80
|
+
} | undefined;
|
|
81
|
+
};
|
|
82
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IcmpMonitor = void 0;
|
|
4
|
+
const monitor_1 = require("./monitor");
|
|
5
|
+
const project_1 = require("./project");
|
|
6
|
+
/**
|
|
7
|
+
* Creates an ICMP Monitor
|
|
8
|
+
*/
|
|
9
|
+
class IcmpMonitor extends monitor_1.Monitor {
|
|
10
|
+
request;
|
|
11
|
+
degradedPacketLossThreshold;
|
|
12
|
+
maxPacketLossThreshold;
|
|
13
|
+
/**
|
|
14
|
+
* Constructs the ICMP Monitor instance
|
|
15
|
+
*
|
|
16
|
+
* @param logicalId unique project-scoped resource name identification
|
|
17
|
+
* @param props configuration properties
|
|
18
|
+
*
|
|
19
|
+
* {@link https://www.checklyhq.com/docs/constructs/icmp-monitor/ Read more in the docs}
|
|
20
|
+
*/
|
|
21
|
+
constructor(logicalId, props) {
|
|
22
|
+
super(logicalId, props);
|
|
23
|
+
this.request = props.request;
|
|
24
|
+
this.degradedPacketLossThreshold = props.degradedPacketLossThreshold;
|
|
25
|
+
this.maxPacketLossThreshold = props.maxPacketLossThreshold;
|
|
26
|
+
project_1.Session.registerConstruct(this);
|
|
27
|
+
this.addSubscriptions();
|
|
28
|
+
this.addPrivateLocationCheckAssignments();
|
|
29
|
+
}
|
|
30
|
+
describe() {
|
|
31
|
+
return `IcmpMonitor:${this.logicalId}`;
|
|
32
|
+
}
|
|
33
|
+
async validate(diagnostics) {
|
|
34
|
+
await super.validate(diagnostics);
|
|
35
|
+
}
|
|
36
|
+
synthesize() {
|
|
37
|
+
return {
|
|
38
|
+
...super.synthesize(),
|
|
39
|
+
checkType: 'ICMP',
|
|
40
|
+
request: this.request,
|
|
41
|
+
degradedPacketLossThreshold: this.degradedPacketLossThreshold,
|
|
42
|
+
maxPacketLossThreshold: this.maxPacketLossThreshold,
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
exports.IcmpMonitor = IcmpMonitor;
|
|
47
|
+
//# sourceMappingURL=icmp-monitor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icmp-monitor.js","sourceRoot":"","sources":["../../src/constructs/icmp-monitor.ts"],"names":[],"mappings":";;;AAAA,uCAAiD;AACjD,uCAAmC;AAuCnC;;GAEG;AACH,MAAa,WAAY,SAAQ,iBAAO;IACtC,OAAO,CAAa;IACpB,2BAA2B,CAAS;IACpC,sBAAsB,CAAS;IAE/B;;;;;;;OAOG;IAEH,YAAa,SAAiB,EAAE,KAAuB;QACrD,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;QAEvB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAA;QAC5B,IAAI,CAAC,2BAA2B,GAAG,KAAK,CAAC,2BAA2B,CAAA;QACpE,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC,sBAAsB,CAAA;QAE1D,iBAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA;QAC/B,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACvB,IAAI,CAAC,kCAAkC,EAAE,CAAA;IAC3C,CAAC;IAED,QAAQ;QACN,OAAO,eAAe,IAAI,CAAC,SAAS,EAAE,CAAA;IACxC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAE,WAAwB;QACtC,MAAM,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;IACnC,CAAC;IAED,UAAU;QACR,OAAO;YACL,GAAG,KAAK,CAAC,UAAU,EAAE;YACrB,SAAS,EAAE,MAAM;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,2BAA2B,EAAE,IAAI,CAAC,2BAA2B;YAC7D,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;SACpD,CAAA;IACH,CAAC;CACF;AA3CD,kCA2CC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { GeneratedFile, Program, Value } from '../sourcegen';
|
|
2
|
+
import { IcmpRequest } from './icmp-request';
|
|
3
|
+
import { Context } from './internal/codegen';
|
|
4
|
+
export declare function valueForIcmpRequest(program: Program, genfile: GeneratedFile, context: Context, request: IcmpRequest): Value;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.valueForIcmpRequest = void 0;
|
|
4
|
+
const sourcegen_1 = require("../sourcegen");
|
|
5
|
+
const icmp_assertion_codegen_1 = require("./icmp-assertion-codegen");
|
|
6
|
+
function valueForIcmpRequest(program, genfile, context, request) {
|
|
7
|
+
return (0, sourcegen_1.object)(builder => {
|
|
8
|
+
builder.string('hostname', request.hostname);
|
|
9
|
+
if (request.ipFamily && request.ipFamily !== 'IPv4') {
|
|
10
|
+
builder.string('ipFamily', request.ipFamily);
|
|
11
|
+
}
|
|
12
|
+
if (request.pingCount !== undefined) {
|
|
13
|
+
builder.number('pingCount', request.pingCount);
|
|
14
|
+
}
|
|
15
|
+
if (request.assertions) {
|
|
16
|
+
const assertions = request.assertions;
|
|
17
|
+
if (assertions.length > 0) {
|
|
18
|
+
builder.array('assertions', builder => {
|
|
19
|
+
for (const assertion of assertions) {
|
|
20
|
+
builder.value((0, icmp_assertion_codegen_1.valueForIcmpAssertion)(genfile, assertion));
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
exports.valueForIcmpRequest = valueForIcmpRequest;
|
|
28
|
+
//# sourceMappingURL=icmp-request-codegen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icmp-request-codegen.js","sourceRoot":"","sources":["../../src/constructs/icmp-request-codegen.ts"],"names":[],"mappings":";;;AAAA,4CAAoE;AACpE,qEAAgE;AAIhE,SAAgB,mBAAmB,CACjC,OAAgB,EAChB,OAAsB,EACtB,OAAgB,EAChB,OAAoB;IAEpB,OAAO,IAAA,kBAAM,EAAC,OAAO,CAAC,EAAE;QACtB,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;QAE5C,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;YACpD,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC9C,CAAC;QAED,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;QAChD,CAAC;QAED,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACvB,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAA;YACrC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1B,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE;oBACpC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;wBACnC,OAAO,CAAC,KAAK,CAAC,IAAA,8CAAqB,EAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAA;oBAC1D,CAAC;gBACH,CAAC,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AA5BD,kDA4BC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { IcmpAssertion } from './icmp-assertion';
|
|
2
|
+
import { IPFamily } from './ip';
|
|
3
|
+
/**
|
|
4
|
+
* Configuration for ICMP ping requests.
|
|
5
|
+
* Defines the target host and ping parameters.
|
|
6
|
+
*/
|
|
7
|
+
export interface IcmpRequest {
|
|
8
|
+
/**
|
|
9
|
+
* The domain name or IP address to ping.
|
|
10
|
+
*
|
|
11
|
+
* @example "www.example.com"
|
|
12
|
+
* @example "199.43.133.53"
|
|
13
|
+
*/
|
|
14
|
+
hostname: string;
|
|
15
|
+
/**
|
|
16
|
+
* The IP protocol version to use for pinging.
|
|
17
|
+
*
|
|
18
|
+
* @example "IPv4"
|
|
19
|
+
* @example "IPv6"
|
|
20
|
+
* @default "IPv4"
|
|
21
|
+
*/
|
|
22
|
+
ipFamily?: IPFamily;
|
|
23
|
+
/**
|
|
24
|
+
* The number of ICMP echo requests (pings) to send. This allows you to see
|
|
25
|
+
* and assert how many packets were received.
|
|
26
|
+
*
|
|
27
|
+
* @minimum 1
|
|
28
|
+
* @maximum 50
|
|
29
|
+
* @example 10
|
|
30
|
+
* @default 10
|
|
31
|
+
*/
|
|
32
|
+
pingCount?: number;
|
|
33
|
+
/**
|
|
34
|
+
* Assertions to validate the ICMP response.
|
|
35
|
+
*/
|
|
36
|
+
assertions?: Array<IcmpAssertion>;
|
|
37
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icmp-request.js","sourceRoot":"","sources":["../../src/constructs/icmp-request.ts"],"names":[],"mappings":""}
|
|
@@ -12,7 +12,7 @@ const webhook_alert_channel_1 = require("./webhook-alert-channel");
|
|
|
12
12
|
class IncidentioAlertChannel extends webhook_alert_channel_1.WebhookAlertChannel {
|
|
13
13
|
static DEFAULT_PAYLOAD = `{
|
|
14
14
|
"title": "{{ALERT_TITLE}}",
|
|
15
|
-
"description": "{{ALERT_TITLE}} at {{STARTED_AT}} in {{RUN_LOCATION}} {{RESPONSE_TIME}}ms",
|
|
15
|
+
"description": "{{ALERT_TITLE}} at {{STARTED_AT}} in {{RUN_LOCATION}} {{RESPONSE_TIME}}ms\\n\\n{{#if AI_ANALYSIS_CLASSIFICATION}}# AI Analysis\\n\\n{{AI_ANALYSIS_CLASSIFICATION}}\\n\\n{{{AI_ANALYSIS_ROOT_CAUSE}}}\\nRead full analysis: {{AI_ANALYSIS_LINK}}{{/if}}",
|
|
16
16
|
"deduplication_key": "{{CHECK_ID}}",
|
|
17
17
|
"metadata": {
|
|
18
18
|
"alertType": "{{ALERT_TYPE}}",
|
package/dist/constructs/index.js
CHANGED
|
@@ -61,4 +61,7 @@ __exportStar(require("./ip"), exports);
|
|
|
61
61
|
__exportStar(require("./dns-monitor"), exports);
|
|
62
62
|
__exportStar(require("./dns-assertion"), exports);
|
|
63
63
|
__exportStar(require("./dns-request"), exports);
|
|
64
|
+
__exportStar(require("./icmp-monitor"), exports);
|
|
65
|
+
__exportStar(require("./icmp-assertion"), exports);
|
|
66
|
+
__exportStar(require("./icmp-request"), exports);
|
|
64
67
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/constructs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAAyB;AACzB,sDAAmC;AACnC,wDAAqC;AACrC,wDAAqC;AACrC,2DAAwC;AACxC,4DAAyC;AACzC,0DAAuC;AACvC,8CAA2B;AAC3B,kDAA+B;AAC/B,gDAA6B;AAC7B,kDAA+B;AAC/B,sDAAmC;AACnC,gDAA6B;AAC7B,+DAA4C;AAC5C,yDAAsC;AACtC,gDAA6B;AAC7B,iDAA8B;AAC9B,gDAA6B;AAC7B,8CAA2B;AAC3B,uDAAoC;AACpC,kDAA+B;AAC/B,qDAAkC;AAClC,sEAAmD;AACnD,sEAAmD;AACnD,0CAAuB;AACvB,8CAA2B;AAC3B,6DAA0C;AAC1C,mDAAgC;AAChC,qDAAkC;AAClC,4DAAyC;AACzC,gDAA6B;AAC7B,6DAA0C;AAC1C,0DAAuC;AACvC,2DAAwC;AACxC,gDAA6B;AAC7B,wDAAqC;AACrC,6CAA0B;AAC1B,qDAAkC;AAClC,gDAA6B;AAC7B,4CAAyB;AACzB,gDAA6B;AAC7B,kDAA+B;AAC/B,gDAA6B;AAC7B,uCAAoB;AACpB,gDAA6B;AAC7B,kDAA+B;AAC/B,gDAA6B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/constructs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAAyB;AACzB,sDAAmC;AACnC,wDAAqC;AACrC,wDAAqC;AACrC,2DAAwC;AACxC,4DAAyC;AACzC,0DAAuC;AACvC,8CAA2B;AAC3B,kDAA+B;AAC/B,gDAA6B;AAC7B,kDAA+B;AAC/B,sDAAmC;AACnC,gDAA6B;AAC7B,+DAA4C;AAC5C,yDAAsC;AACtC,gDAA6B;AAC7B,iDAA8B;AAC9B,gDAA6B;AAC7B,8CAA2B;AAC3B,uDAAoC;AACpC,kDAA+B;AAC/B,qDAAkC;AAClC,sEAAmD;AACnD,sEAAmD;AACnD,0CAAuB;AACvB,8CAA2B;AAC3B,6DAA0C;AAC1C,mDAAgC;AAChC,qDAAkC;AAClC,4DAAyC;AACzC,gDAA6B;AAC7B,6DAA0C;AAC1C,0DAAuC;AACvC,2DAAwC;AACxC,gDAA6B;AAC7B,wDAAqC;AACrC,6CAA0B;AAC1B,qDAAkC;AAClC,gDAA6B;AAC7B,4CAAyB;AACzB,gDAA6B;AAC7B,kDAA+B;AAC/B,gDAA6B;AAC7B,uCAAoB;AACpB,gDAA6B;AAC7B,kDAA+B;AAC/B,gDAA6B;AAC7B,iDAA8B;AAC9B,mDAAgC;AAChC,iDAA8B"}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { Value } from '../../sourcegen';
|
|
2
2
|
import { Assertion } from './assertion';
|
|
3
|
-
export
|
|
3
|
+
export interface ValueForNumericAssertionOptions {
|
|
4
|
+
hasProperty?: boolean;
|
|
5
|
+
}
|
|
6
|
+
export declare function valueForNumericAssertion<Source extends string>(klass: string, method: string, assertion: Assertion<Source>, options?: ValueForNumericAssertionOptions): Value;
|
|
4
7
|
export interface ValueForGeneralAssertionOptions {
|
|
5
8
|
hasProperty?: boolean;
|
|
6
9
|
hasRegex?: boolean;
|