Skip to content

Commit bd664fe

Browse files
authored
Merge branch 'main' into giordanodaniel-api-nav
2 parents 2fa2975 + d343e63 commit bd664fe

27 files changed

Lines changed: 495 additions & 262 deletions

cli/overview.mdx

Lines changed: 13 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
---
2-
title: Overview
3-
description: 'Complete guide to the Checkly CLI for monitoring as code'
2+
title: Checkly CLI
3+
description: 'Code, test, and deploy synthetic monitoring at scale with the Checkly CLI.'
44
sidebarTitle: 'Overview'
55
---
66

77
import MainCicdCards from "/snippets/main-cicd-cards.mdx"
88

99
The Checkly CLI gives you a JavaScript/TypeScript-native workflow for coding, testing and deploying synthetic
10-
monitoring at scale, from your code base. The Checkly CLI comes with **native `@playwright/test` support.** No lock-in,
10+
monitoring at scale, from your code base. The Checkly CLI comes with **native `@playwright/test` support.** No lock-in,
1111
just write standard `*.spec.ts` files.
1212

1313
## Starting your first project
@@ -31,7 +31,7 @@ After this, let's dry run the Checks in your new project against the global Chec
3131
npx checkly test
3232
```
3333

34-
This should report the following output to your terminal
34+
This should report the following output to your terminal
3535

3636
```
3737
Running 4 checks in eu-west-1.
@@ -53,25 +53,22 @@ Lastly, you deploy your Checks and related alert channels to Checkly, so we run
5353
npx checkly deploy
5454
```
5555

56-
You just created your entire synthetic monitoring setup with API and Playwright-based Browser Checks from your code base!
56+
You just created your entire synthetic monitoring setup with API and Playwright-based Browser Checks from your code base!
5757
Open up [your Checkly dashboard](https://app.checklyhq.com) and you should see your check, ready to start monitoring around the clock.
5858

5959
For a custom installation check out [our installation docs](/cli/installation/).
6060

61-
## Using AI IDEs and Copilots
61+
## Using Agents, AI IDEs and Copilots
6262

63-
Checkly is designed to work with AI IDEs and Copilots. You can use your preferred provider to generate code for API
63+
Checkly is designed to work with Agents, AI IDEs, and Copilots. You can use your preferred provider to generate code for API
6464
Checks, Browser Checks and all other constructs.
6565

66-
<Columns cols={3}>
67-
<Card title="GitHub Copilot" icon="/images/github-copilot-icon.svg" href="/integrations/ai/copilot">
68-
Download the Checkly instructions file and let copilot generate Checkly CLI code for you.
66+
<Columns cols={2}>
67+
<Card title="Checkly Skills" href="/integrations/ai/skills">
68+
Install Checkly Skills and let AI agents generate Checkly monitoring code for you.
6969
</Card>
70-
<Card title="Cursor" icon="/images/cursor-icon.svg" href="/integrations/ai/cursor">
71-
Download the Checkly `.mdc` rules file and let Cursor generate Checkly CLI code for you.
72-
</Card>
73-
<Card title="Claude Code" icon="/images/claude-icon.svg" href="/integrations/ai/claude">
74-
Download the Checkly rules file and let Claude generate Checkly CLI code for you.
70+
<Card title="Checkly Rules" href="/integrations/ai/rules">
71+
Include the Checkly Rules in your conversations to generate Checkly monitoring code for you.
7572
</Card>
7673
</Columns>
7774

@@ -80,4 +77,4 @@ Checks, Browser Checks and all other constructs.
8077
After kicking the tires, you should delegate the testing and deploying of your checks to your CI/CD pipeline. Check our
8178
docs on [setting up the Checkly CLI with your favourite CI/CD platform](/integrations/ci-cd/overview).
8279

83-
<MainCicdCards />
80+
<MainCicdCards />

concepts/metrics.mdx

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Response time metrics measure how quickly your services respond to requests, pro
1616

1717
**Unit:** Milliseconds
1818
**Precision:** 2 decimal places
19-
**Available for:** API, Browser, Heartbeat, TCP, Multistep, URL checks
19+
**Available for:** API, Browser, TCP, DNS, Multistep, URL checks
2020

2121
<Accordion title="Use cases">
2222
- Establishing performance baselines
@@ -31,7 +31,7 @@ Response time metrics measure how quickly your services respond to requests, pro
3131

3232
**Unit:** Milliseconds
3333
**Precision:** 2 decimal places
34-
**Available for:** API, Browser, Heartbeat, TCP, Multistep, URL checks
34+
**Available for:** API, Browser, TCP, DNS, Multistep, URL checks
3535

3636
<Accordion title="Use cases">
3737
- SLA monitoring and compliance
@@ -46,7 +46,7 @@ Response time metrics measure how quickly your services respond to requests, pro
4646

4747
**Unit:** Milliseconds
4848
**Precision:** 2 decimal places
49-
**Available for:** API, Browser, Heartbeat, TCP, Multistep, URL checks
49+
**Available for:** API, Browser, TCP, DNS, Multistep, URL checks
5050

5151
<Accordion title="Use cases">
5252
- Understanding worst-case user experience
@@ -60,7 +60,7 @@ Response time metrics measure how quickly your services respond to requests, pro
6060

6161
**Unit:** Milliseconds
6262
**Precision:** 2 decimal places
63-
**Available for:** API, Browser, Heartbeat, TCP, Multistep, URL checks
63+
**Available for:** API, Browser, TCP, DNS, Multistep, URL checks
6464

6565
<Accordion title="Use cases">
6666
- Understanding typical user experience
@@ -75,7 +75,7 @@ Response time metrics measure how quickly your services respond to requests, pro
7575

7676
**Unit:** Milliseconds
7777
**Precision:** 2 decimal places
78-
**Available for:** API, Browser, Heartbeat, TCP, Multistep, URL checks
78+
**Available for:** API, Browser, TCP, DNS, Multistep, URL checks
7979

8080
<Accordion title="Use cases">
8181
- Understanding best-case performance
@@ -90,7 +90,7 @@ Response time metrics measure how quickly your services respond to requests, pro
9090

9191
**Unit:** Milliseconds
9292
**Precision:** 2 decimal places
93-
**Available for:** API, Browser, Heartbeat, TCP, Multistep, URL checks
93+
**Available for:** API, Browser, TCP, DNS, Multistep, URL checks
9494

9595
<Accordion title="Use cases">
9696
- Identifying performance spikes
@@ -188,7 +188,7 @@ Core Web Vitals are a set of metrics defined by Google that measure real-world u
188188
**Available for:** Browser, Multistep checks only
189189

190190
**Google's thresholds:**
191-
- Good: d 1.8 seconds
191+
- Good: 1.8 seconds
192192
- Needs improvement: 1.8 - 3.0 seconds
193193
- Poor: > 3.0 seconds
194194

@@ -401,7 +401,7 @@ These metrics are specific to heartbeat checks, which monitor the availability a
401401

402402
**Unit:** Milliseconds
403403
**Precision:** 2 decimal places
404-
**Available for:** API, Browser, URL, TCP checks (when hostname is used)
404+
**Available for:** API, Browser, URL, TCP, DNS, ICMP checks (when hostname is used)
405405

406406
<Accordion title="Use cases">
407407
- DNS performance monitoring

constructs/api-check.mdx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@ The API Check configuration consists of specific API Check options and inherited
104104
| `runParallel` | `boolean` || `false` | Run checks in parallel or round-robin |
105105
| `tags` | `string[]` || `[]` | Array of tags to organize checks |
106106
| `testOnly` | `boolean` || `false` | Only run with test, not during deploy |
107+
| `triggerIncident` | `IncidentTrigger` || - | Create and resolve an incident based on the check's alert configuration |
107108

108109
</Tab>
109110
</Tabs>

constructs/browser-check.mdx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ The Browser Check configuration consists of specific Browser Check options and i
7171
| `code` | `object` || - | The Playwright test code |
7272

7373
</Tab>
74-
<Tab title="General Options">
74+
<Tab title="General Check">
7575

7676
| Property | Type | Required | Default | Description |
7777
|----------|------|----------|---------|-------------|
@@ -90,6 +90,7 @@ The Browser Check configuration consists of specific Browser Check options and i
9090
| `runParallel` | `boolean` || `false` | Whether to run checks in parallel across locations |
9191
| `tags` | `string[]` || `[]` | Tags to organize checks/monitors |
9292
| `testOnly` | `boolean` || `false` | Only run with test, not during deploy |
93+
| `triggerIncident` | `IncidentTrigger` || - | Create and resolve an incident based on the check's alert configuration |
9394

9495
</Tab>
9596
</Tabs>

constructs/multistep-check.mdx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,7 @@ new MultiStepCheck("complex-multistep-check", {
8888
| `runParallel` | `boolean` || `false` | Run checks in parallel or round-robin |
8989
| `tags` | `string[]` || `[]` | Array of tags to organize checks |
9090
| `testOnly` | `boolean` || `false` | Only run with test, not during deploy |
91+
| `triggerIncident` | `IncidentTrigger` || - | Create and resolve an incident based on the check's alert configuration |
9192

9293
</Tab>
9394
</Tabs>

constructs/playwright-check.mdx

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -68,9 +68,24 @@ The Playwright Check Suite configuration consists of specific Playwright Check S
6868
| `include` | `string` `string[]` || - | File patterns to include when bundling the test project |
6969

7070
</Tab>
71-
<Tab title="General Monitor">
72-
73-
<GeneralMonitorOptionsTable />
71+
<Tab title="General Check">
72+
73+
| Property | Type | Required | Default | Description |
74+
|----------|------|----------|---------|-------------|
75+
| `name` | `string` || - | Friendly name for your check |
76+
| `activated` | `boolean` || `true` | Whether the check is enabled |
77+
| `alertChannels` | `AlertChannel[]` || `[]` | Array of AlertChannel objects for notifications |
78+
| `alertEscalationPolicy` | `AlertEscalationPolicy` || - | Advanced alert settings |
79+
| `environmentVariables` | `object[]` || `[]` | Check-level environment variables |
80+
| `frequency` | `Frequency` || - | How often to run your check |
81+
| `group` | `CheckGroup` || - | The CheckGroup this check belongs to |
82+
| `locations` | `string[]` || `[]` | Array of public location codes |
83+
| `muted` | `boolean` || `false` | Whether alert notifications are muted |
84+
| `privateLocations` | `string[]` || `[]` | Array of Private Location slugs |
85+
| `runParallel` | `boolean` || `false` | Run checks in parallel or round-robin |
86+
| `tags` | `string[]` || `[]` | Array of tags to organize checks |
87+
| `testOnly` | `boolean` || `false` | Only run with test, not during deploy |
88+
| `triggerIncident` | `IncidentTrigger` || - | Create and resolve an incident based on the check's alert configuration |
7489

7590
</Tab>
7691
</Tabs>

detect/synthetic-monitoring/playwright-checks/configuration.mdx

Lines changed: 82 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -198,25 +198,102 @@ The `npx checkly test` command runs your Playwright tests locally using the same
198198

199199
### Configuration errors
200200

201-
**Invalid `logicalId`**
201+
#### Invalid `logicalId`
202202

203203
```
204204
Error: logicalId must be unique across all checks
205205
```
206206

207207
Ensure each Playwright Check Suite has a unique `logicalId`. The `logicalId` is used as a stable reference across deployments.
208208

209-
**Missing Playwright configuration**
209+
#### Missing Playwright configuration
210210

211211
```
212212
Error: Cannot find playwright.config.ts at path: ./playwright.config.ts
213213
```
214214

215215
Verify that `playwrightConfigPath` points to the correct relative path from your `checkly.config.ts` file.
216216

217+
### Alert optimization
218+
219+
#### Alerts are triggered too late
220+
221+
Playwright Check Suites wait for `npx playwright test` to finish before triggering an alert on test failure. Use [Playwright's `maxFailures` option](https://playwright.dev/docs/api/class-testconfig#test-config-max-failures) to stop the test run and trigger alerts earlier. This setting halts the entire suite after reaching the specified number of failures, allowing you to receive alerts faster.
222+
223+
Specify this option in your `playwright.config` or the `testCommand` in your `checkly.config`.
224+
225+
<Tabs>
226+
<Tab title="playwright.config.ts">
227+
```typescript playwright.config.ts highlight={5}
228+
import { defineConfig } from '@playwright/test';
229+
230+
export default defineConfig({
231+
// Setting to zero (default) disables max failures.
232+
maxFailures: process.env.CHECKLY === '1' ? 1 : 0,
233+
})
234+
```
235+
</Tab>
236+
<Tab title="checkly.config.ts">
237+
```typescript checkly.config.ts highlight={11}
238+
import { defineConfig } from 'checkly'
239+
240+
export default defineConfig({
241+
checks: {
242+
playwrightConfigPath: './playwright.config.ts',
243+
playwrightChecks: [
244+
{
245+
name: 'E2E test suite',
246+
logicalId: 'e2e-test-suite',
247+
pwTags: '@e2e',
248+
testCommand: 'npx playwright test --max-failures=1',
249+
}
250+
]
251+
},
252+
})
253+
```
254+
</Tab>
255+
</Tabs>
256+
257+
#### Alerts are triggered too often
258+
259+
End-to-end testing for complex or flaky applications can be difficult. While it's best if your Playwright tests are not flaky, you can use the [`retries` option](https://playwright.dev/docs/test-retries#retries) to automatically rerun failed tests and prevent false alarms in your Playwright Check Suites monitoring.
260+
261+
Specify this option in your `playwright.config` or the `testCommand` in your `checkly.config`.
262+
263+
<Tabs>
264+
<Tab title="playwright.config.ts">
265+
```typescript playwright.config.ts highlight={4}
266+
import { defineConfig } from '@playwright/test';
267+
268+
export default defineConfig({
269+
retries: process.env.CHECKLY === '1' ? 3 : 0,
270+
})
271+
```
272+
</Tab>
273+
<Tab title="checkly.config.ts">
274+
```typescript checkly.config.ts highlight={11}
275+
import { defineConfig } from 'checkly'
276+
277+
export default defineConfig({
278+
checks: {
279+
playwrightConfigPath: './playwright.config.ts',
280+
playwrightChecks: [
281+
{
282+
name: 'E2E test suite',
283+
logicalId: 'e2e-test-suite',
284+
pwTags: '@e2e',
285+
testCommand: 'npx playwright test --retries=3',
286+
}
287+
]
288+
},
289+
})
290+
```
291+
</Tab>
292+
</Tabs>
293+
217294
### Test execution issues
218295

219-
**Tests exceed 30-minute limit**
296+
#### Tests exceed 30-minute limit
220297

221298
If your Playwright Check Suite times out after 30 minutes:
222299

@@ -225,15 +302,15 @@ If your Playwright Check Suite times out after 30 minutes:
225302
- Optimize slow tests by reducing wait times and parallelizing where possible
226303
- [Contact Checkly support](https://app.checklyhq.com/?support=true) if you need further help
227304

228-
**Dependency installation failures**
305+
#### Dependency installation failures
229306

230307
If dependencies fail to install:
231308

232309
- Check that your `package.json` and lock file (e.g., `package-lock.json`) are both included in your deployment.
233310
- Verify that the private registry authentication is configured correctly. See the [custom dependencies guide](/detect/synthetic-monitoring/playwright-checks/custom-dependencies/) for more details.
234311
- Adjust the `installCommand` to match your project's expectation.
235312

236-
**Authentication failures in tests**
313+
#### Authentication failures in tests
237314

238315
If tests fail due to authentication issues:
239316

detect/synthetic-monitoring/playwright-checks/overview.mdx

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: Overview
2+
title: Playwright Check Suites
33
sidebarTitle: Overview
44
description: 'Run your Playwright end-to-end test suite as synthetic production monitoring.'
55
tags: ['synthetic-monitoring', 'playwright-checks']
@@ -10,8 +10,7 @@ tags: ['synthetic-monitoring', 'playwright-checks']
1010
**Playwright Check Suites turn your Playwright end-to-end tests into production monitors.** Run entire test suites, specific projects, or tagged tests globally without modifying your existing code or configuration.
1111

1212
<Warning>
13-
**Known limitations**: Playwright Check Suites do not currently support monorepo workspaces for dependency installation.
14-
Each check run has a maximum execution time of 30 minutes.
13+
**Known limitations**: Each check run has a maximum execution time of 30 minutes.
1514
</Warning>
1615

1716
<Frame>

detect/testing/playwright-reporter-changelog.mdx

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,23 @@ Learn more about:
1313

1414
## Full release history
1515

16+
<Update label="v1.5.0" tags={["February 2026"]}>
17+
**Added**
18+
19+
- **Test command** - The test command is now automatically detected and shown in the Checkly UI. Override with the `testCommand` option or `CHECKLY_TEST_COMMAND` env var.
20+
- **Job logs** - CI job logs are now included in test session uploads.
21+
</Update>
22+
23+
<Update label="v1.4.2" tags={["February 2026"]}>
24+
**Fixed**
25+
26+
- Missing credentials now show a clean warning instead of a stack trace. Other reporters continue working normally.
27+
28+
**Changed**
29+
30+
- Improved summary table format.
31+
</Update>
32+
1633
<Update label="v1.4.1" tags={["February 2026"]}>
1734
**Critical Bug Fix**
1835

detect/uptime-monitoring/heartbeat-monitors/overview.mdx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,8 @@ Heartbeat monitors provide different metrics and insights than other types of ch
7878
- **Alert Timeline**: When alerts were triggered and resolved
7979
- **Source Tracking**: Which systems or processes sent pings
8080

81+
Heartbeat metrics are also available via the [Prometheus V2 integration](/integrations/observability/prometheus-v2#heartbeat-metrics), including dead man's switch gauges for alerting in Grafana when a ping is overdue.
82+
8183
<Warning>
8284
Remember: Heartbeat monitors detect when jobs fail to complete, but they can't tell you why a job failed. Combine heartbeat monitoring with application logging and error tracking for complete observability.
8385
</Warning>

0 commit comments

Comments
 (0)