Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 11 additions & 15 deletions src/content/docs/workers/configuration/cron-triggers.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,12 @@ Refer to the following additional examples to write your code:

### 2. Update configuration

:::note[Cron Trigger changes take time to propagate.]

Changes such as adding a new Cron Trigger, updating an old Cron Trigger, or deleting a Cron Trigger may take several minutes (up to 15 minutes) to propagate to the Cloudflare global network.

:::

After you have updated your Worker code to include a `"scheduled"` event, you must update your Worker project configuration.

#### Via the [Wrangler configuration file](/workers/wrangler/configuration/)
Expand Down Expand Up @@ -165,26 +171,16 @@ Some common time intervals that may be useful for setting up your Cron Trigger:
- `59 23 LW * *`
- 23:59 (UTC) on the last weekday of the month

## Test Cron Triggers

The recommended way of testing Cron Triggers is using Wrangler.

:::note[Cron Trigger changes take time to propagate.]

Changes such as adding a new Cron Trigger, updating an old Cron Trigger, or deleting a Cron Trigger may take several minutes (up to 15 minutes) to propagate to the Cloudflare global network.

:::
## Test Cron Triggers locally

Test Cron Triggers using `Wrangler` by passing in the `--test-scheduled` flag to [`wrangler dev`](/workers/wrangler/commands/#dev). This will expose a `/__scheduled` (or `/cdn-cgi/handler/scheduled` for Python Workers) route which can be used to test using a HTTP request. To simulate different cron patterns, a `cron` query parameter can be passed in.
Test Cron Triggers using Wrangler with [`wrangler dev`](/workers/wrangler/commands/#dev). This will expose a `/cdn-cgi/handler/scheduled` route which can be used to test using a HTTP request. To simulate different cron patterns, a `cron` query parameter can be passed in.
Copy link
Contributor

@CarmenPopoviciu CarmenPopoviciu Apr 28, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Test Cron Triggers using Wrangler with wrangler dev. This will expose a /cdn-cgi/handler/scheduled route which can be used to test using a HTTP request.

curl "http://localhost:8787/cdn-cgi/handler/scheduled

To simulate different cron patterns, a cron query parameter can be passed in.


```sh
npx wrangler dev --test-scheduled

curl "http://localhost:8787/__scheduled?cron=*+*+*+*+*"

curl "http://localhost:8787/cdn-cgi/handler/scheduled?cron=*+*+*+*+*" # Python Workers
curl "http://localhost:8787/cdn-cgi/handler/scheduled?cron=*+*+*+*+*"
```

Optionally, you can also pass a `time` query parameter to override `controller.scheduledTime` in your scheduled event listener.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

would be nice to have a code snippet for this as well


## View past events

To view the execution history of Cron Triggers, view **Cron Events**:
Expand Down