You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: site/content/docs/alerting-and-retries/alert-channels.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -47,5 +47,5 @@ Configuring alert channels is mostly self explanatory except for our [advanced w
47
47
After adding the channels, you either **edit** or **delete** them, or change which checks are subscribed to that specific channel.
48
48
49
49
{{<info >}}
50
-
If you are using [Terraform](/docs/terraform-provider/), you will need to specify alert channel subscriptions _explicitly_ for each check / group.
50
+
If you are using [Terraform](/docs/terraform-provider/) or the [CLI](/docs/cli/), you will need to specify alert channel subscriptions _explicitly_ for each check / group.
If you want to filter Checkly traffic in Google Analytics to prevent Checkly browser checks from skewing your
113
-
numbers, here is one way to do it:
112
+
You might want to filter Checkly traffic in Google Analytics to prevent Checkly browser checks from skewing your results.
113
+
114
+
If you are using Google Analytics 4 or newer, Checkly traffic is [already being excluded](https://support.google.com/analytics/answer/9888366?hl=en) as it is recognized as coming from a known bot-traffic source.
115
+
116
+
### Older Google Analytics versions
117
+
118
+
If you want to filter Checkly traffic in older Google Analytics versions, here is one way to do it:
114
119
115
120
1. Add a UTM source tag to the URLs your requesting, i.e.:
Effective monitoring stands and falls with its accuracy. You want to be alerted-and, if it comes to it, woken up in the middle of the night-only when there's a real issue. However, the reality is that false positives can occur for various reasons. A check might be affected by a harmless glitch in the network connection between Checkly and your check target, causing your site to be flagged as slow or unreachable, when, in fact, it is running perfectly fine.
10
+
11
+
The public internet, with its millions of networks and nodes, can be unpredictable, making occasional hiccups unavoidable. Thankfully, many of these are just isolated incidents that resolve on their own, and there are ways to protect your monitoring setup from them. At Checkly, we aim to help you achieve the lowest false positive rate in the market, ensuring you are alerted only when it truly matters.
12
+
13
+
In this guide, we’ll dive into common causes of performance variations and provide strategies to minimize false positives.
14
+
15
+
## Common Causes of Performance Variations
16
+
17
+
When setting up your monitoring strategy, it's important to consider a few common factors that can affect networking performance:
18
+
19
+
-**Network Latency:** The time it takes for data to travel between points. This can vary due to distance, routing, or congestion.
20
+
-**Packet Loss:** Sometimes data packets don’t reach their destination and need to be resent, leading to delays.
21
+
-**Server Response Time:** Servers might occasionally take longer to respond, or load balancers and backend services could be at capacity.
22
+
-**Infrastructure Issues:** Temporary issues like routing errors, server load spikes, or scheduled maintenance can also impact performance.
23
+
-**Security-Related Blockages:** Firewalls, DDoS protection, or other security measures might prevent Checkly’s monitoring traffic from reaching your servers if flagged as suspicious. This can disrupt checks and result in false positives.
24
+
25
+
While these factors are generally well-managed, they can’t be completely avoided. However, you can take steps to make your monitoring setup more resilient.
26
+
27
+
## Best Practices to Minimize False Positives
28
+
29
+
False positives can lead to unnecessary alerts, but you can keep them under control by following these best practices:
30
+
31
+
### Use Retries
32
+
33
+
Retries are your first line of defense against transient issues. By setting up retries, your checks can automatically try again if the first attempt fails because of a temporary glitch. This reduces the impact of brief disruptions and helps prevent false positives.
34
+
35
+
While you might want to adjust based on specific use cases, we suggest implementing retries for checks with a high escalation impact as a standard best practice.
36
+
37
+
Learn more about implementing retries: [Retries at Checkly](https://www.checklyhq.com/docs/alerting-and-retries/retries/#retries).
38
+
39
+
### Optimize Your Regional Monitoring
40
+
41
+
Running checks from a specific region is important when you need to monitor your app’s performance in that area. To identify localized failures, implementing retries can help confirm whether the issue is temporary or persistent. However, if you want to understand whether an issue is more widespread, running checks from multiple regions can help you determine if it’s a broader problem with your app.
42
+
43
+
Depending on your use case, we recommend running checks from at least two different regions to more accurately differentiate between a regional network issue and a genuine application problem.
44
+
45
+
Learn more about setting up multi-location checks: [Global Location and Scheduling Strategies](https://www.checklyhq.com/docs/monitoring/global-locations/).
46
+
47
+
### Fine-Tune Your Alerting
48
+
49
+
Adjust your alert settings to avoid unnecessary notifications. For example, you can require failures in multiple regions or after several retries before firing off an alert. This helps you avoid alerts for short-lived, isolated failures that don’t need immediate attention.
50
+
51
+
A good starting point is to set alerts to trigger only after a check has failed at least twice (or after two intervals) and has failed in more than one region.
52
+
53
+
Learn more about fine-tuning your alerts: [Alert Settings at Checkly](https://www.checklyhq.com/docs/alerting-and-retries/alert-settings/).
54
+
55
+
### Allowlist Checkly Traffic
56
+
57
+
In some cases, firewalls, load balancers, or security solutions might inadvertently block Checkly's monitoring traffic, which could interfere with running checks successfully. This can happen if your system detects Checkly’s requests as suspicious or treats them as unwanted traffic.
58
+
59
+
To prevent this, we recommend reviewing your security settings to ensure that Checkly’s IP ranges are included in your allowlist.
60
+
61
+
You can find Checkly’s current IP ranges here: [Allowlisting & filtering traffic](https://www.checklyhq.com/docs/monitoring/allowlisting/#ip-range-allowlisting).
62
+
63
+
## Need Help?
64
+
65
+
If you’re not sure what’s going on or if an issue keeps popping up without a clear reason, don’t hesitate to reach out. Our support team is here to help you troubleshoot any unusual check performance. You can contact us at [email protected].
Copy file name to clipboardExpand all lines: site/content/docs/runtimes/_index.md
+15-28Lines changed: 15 additions & 28 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,73 +10,60 @@ aliases:
10
10
cli: true
11
11
---
12
12
13
-
Checkly allows you to use JavaScript code in your [Browser checks](/docs/browser-checks/) and in the optional
14
-
[setup & teardown scripts](/docs/api-checks/setup-teardown-scripts/) you can add to your API checks.
13
+
Checkly allows you to use JavaScript code in your [Browser checks](/docs/browser-checks/) and in the optional [setup & teardown scripts](/docs/api-checks/setup-teardown-scripts/) you can add to your API checks.
15
14
16
-
This JavaScript code executes in a runtime environment that is managed by Checkly. This environment has access to specific
17
-
Node.js versions and NPM packages, like the "latest Playwright version on Node 14". We call these environments **runtimes**.
15
+
This JavaScript code executes in a runtime environment that is managed by Checkly. This environment has access to specific Node.js versions and NPM packages, like the "latest Playwright version on Node 14". We call these environments **runtimes**.
18
16
19
17
## Using runtimes
20
18
21
19
It's pretty easy. You don't have to do anything most of the time.
22
20
23
21
1. View all the available runtimes on the [runtimes tab in the account section](https://app.checklyhq.com/settings/account/runtimes/). See the screenshot below.
24
22
2. There is always one runtime marked as **active**. This is the runtime all checks use, unless you decide to override this at the check or group level.
25
-
4. Runtimes have a simple `YYYY.MM` name, e.g. `2021.06` Newer dates hold newer dependencies.
23
+
4. Runtimes have a simple `YYYY.MM` name, e.g. `2021.06` Newer dates hold newer dependencies.
26
24
3. Pick the runtime you want and click "Save settings". This runtime now applies to all of your checks and any new checks you create.
Note that one runtime version, e.g. `2021.6` holds all dependencies for all check types. There is no separate runtime for
31
-
different types of checks.
28
+
Note that one runtime version, e.g. `2021.06` holds all dependencies for all check types. There is no separate runtime for different types of checks.
32
29
33
30
## Overriding runtimes for specific checks
34
31
35
-
Before updating your Checkly account to a new runtime, you can enable a newer runtime just for one check or check group.
36
-
This is a very powerful way to make sure your checks are compatible with a new runtime.
32
+
Before updating your Checkly account to a new runtime, you can enable a newer runtime just for one check or check group. This is a very powerful way to make sure your checks are compatible with a new runtime.
37
33
38
34
You can:
39
35
40
36
- Select a specific runtime in the **Browser check** editor.
41
37
- Select a specific runtime in the "Setup & teardown" tab for each **API check**.
42
38
- Select a specific runtime on the "Runtimes" tab for each **check group**.
43
39
44
-
> Overriding the global, account level runtime for a handful of checks is **the recommended way to check for any compatibility issues**
45
-
before committing to a new, global runtime. Note the hierarchy: **check** runtime trumps **group** runtime trumps **global account** runtime.
46
-
40
+
> Overriding the global, account level runtime for a handful of checks is **the recommended way to check for any compatibility issues** before committing to a new, global runtime. Note the hierarchy: **check** runtime trumps **group** runtime trumps **global account** runtime.
41
+
47
42
## How we update and release new runtimes
48
43
49
44
We ship new runtimes with a regular cadence. This is what you can expect from us:
50
45
51
46
**1. Major & minor version upgrades of core packages and Node.js versions**
52
-
53
-
We aim to release a new runtime that holds the major and minor upgrades of Playwright and Node.js **every quarter**.
54
-
This will result in a new, named runtime e.g. `2023.03` available in the Checkly webapp and in our API.
47
+
48
+
We aim to release a new runtime that holds the major and minor upgrades of Playwright and Node.js **every quarter**. This will result in a new, named runtime e.g. `2023.03` available in the Checkly webapp and in our API.
55
49
56
50
**2. Patch releases and security patches**
57
51
58
-
We reserve the right to **update an existing runtime** with critical security patches if deemed necessary. We will only do
59
-
this if there are no known backwards compatibility issues.
52
+
We reserve the right to **update an existing runtime** with critical security patches if deemed necessary. We will only do this if there are no known backwards compatibility issues.
60
53
61
54
## Why are runtimes important?
62
55
63
-
We introduced the concept of runtimes so customers can upgrade their JavaScript enhanced checks to more recent Node package versions
64
-
in a controlled fashion; and roll back if anything breaks! Before, this was a more risky "big bang" migration.
56
+
We introduced the concept of runtimes so customers can upgrade their JavaScript enhanced checks to more recent Node package versions in a controlled fashion; and roll back if anything breaks! Before, this was a more risky "big bang" migration.
65
57
66
58
## Why can't I import any NPM package or other 3rd party dependencies?
67
59
68
-
Currently, Checkly is not a full-blown CI system, where a user has full control over the Node.js version and the packages
69
-
installed in the `node_modules` directory. To help you navigate this tradeoff, we want to show you exactly what happens under
70
-
the hood.
60
+
Currently, Checkly is not a full-blown CI system, where a user has full control over the Node.js version and the packages installed in the `node_modules` directory. To help you navigate this tradeoff, we want to show you exactly what happens under the hood.
71
61
72
62
1. We bundle all your user code when using the [Checkly CLI](/docs/cli) or GitHub Sync before storing your Check in our database.
73
-
2. Your Check is scheduled to our 20+ global locations via a message bus that has a 256kb file size limit. This is in 99%
63
+
2. Your Check is scheduled to our 20+ global locations via a message bus that has a 256kb file size limit. This is in 99%
74
64
of the cases more than enough for any user code and included file dependencies you may include. However, it is not enough for potentially unlimited
75
65
NPM dependencies living in `node_modules`.
76
-
3. The Checkly Runtime prepackages common 3rd party NPM modules and defines the Node.js version to avoid building, transferring and caching
77
-
potentially each Check across multiple Node.js versions, greatly reducing complexity.
66
+
3. The Checkly Runtime prepackages common 3rd party NPM modules and defines the Node.js version to avoid building, transferring and caching potentially each Check across multiple Node.js versions, greatly reducing complexity.
78
67
4. Our provided Runtime packages are tested with our sandboxing for extra runtime security.
79
68
80
-
If you want to see a package included in the Checkly Runtime, [please add a post on our feedback board](https://feedback.checklyhq.com/)
81
-
with a package name, and your use case.
82
-
69
+
If you want to see a package included in the Checkly Runtime, [please add a post on our feedback board](https://feedback.checklyhq.com/) with a package name, and your use case.
Copy file name to clipboardExpand all lines: site/content/docs/runtimes/specs.md
+5-11Lines changed: 5 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,12 +12,9 @@ cli: true
12
12
By default, all our runners have their timezone set to UTC, regardless of their location.
13
13
14
14
## Resource limitations
15
-
Each Browser and Multistep check can use up to `2.9 GiB` of memory and `2 CPU` cores.
16
-
This limit applies to all processes spawned by the check, including the browser, the test framework, and the test code itself.
17
-
The limit is enforced by the runner and is not configurable.
15
+
Each Browser and Multistep check can use up to `2.9 GiB` of memory and `2 vCPU` cores. This limit applies to all processes spawned by the check, including the browser, the test framework, and the test code itself. The limit is enforced by the runner and is not configurable.
18
16
19
-
> When the memory limit is exceeded,
20
-
the check will automatically fail with a relevant error message, for example: `Your check has reached the maximum memory usage of 2.9 GiB`.
17
+
> When the memory limit is exceeded, the check will automatically fail with a relevant error message, for example: `Your check has reached the maximum memory usage of 2.9 GiB`.
21
18
22
19
## Built-in Node.js modules
23
20
@@ -37,19 +34,16 @@ the check will automatically fail with a relevant error message, for example: `Y
37
34
- util
38
35
- zlib
39
36
40
-
See the built-in module documentation on the official Node.js site:
37
+
See the built-in module documentation on the official Node.js site (please see below which runtime includes what NodeJS version):
0 commit comments