Skip to content

Commit 997ec47

Browse files
authored
Merge branch 'production' into ranbel/unified-access-apps
2 parents ef2a41d + f73ce92 commit 997ec47

File tree

153 files changed

+1948
-1125
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

153 files changed

+1948
-1125
lines changed

bin/crawl-api-links.js

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,13 @@ async function checkLinks() {
2121
});
2222
const page = await browser.newPage();
2323

24+
// skip image requests
25+
await page.setRequestInterception(true);
26+
page.on("request", (request) => {
27+
if (request.resourceType() === "image") request.abort();
28+
else request.continue();
29+
});
30+
2431
const sitemapUrl = "https://developers.cloudflare.com/sitemap.xml";
2532
await page.goto(sitemapUrl, { timeout: navigationTimeout });
2633

@@ -51,23 +58,22 @@ async function checkLinks() {
5158
}
5259

5360
if (
54-
pageLink.includes("developers.cloudflare.com/api/operations/") ||
55-
pageLink.startsWith("/api/operations/")
61+
pageLink.includes("developers.cloudflare.com/api/resources/") ||
62+
pageLink.startsWith("/api/resources/")
5663
) {
5764
console.log(`Evaluating link: ${pageLink}`);
58-
await page.goto(pageLink, {
65+
const response = await page.goto(pageLink, {
5966
waitUntil: "networkidle0",
6067
timeout: navigationTimeout,
6168
});
6269
visitedLinks.push(pageLink);
6370

64-
const statusCode = await page.evaluate(() => {
65-
return {
66-
url: window.location.href,
67-
};
68-
});
69-
if (statusCode.url === "https://developers.cloudflare.com/api/") {
70-
brokenLinks.push(pageLink);
71+
if (response) {
72+
if (response.status() === 404) {
73+
brokenLinks.push(pageLink);
74+
}
75+
} else {
76+
console.log("WARNING: Didn't receive a response... skipping.");
7177
}
7278
}
7379
}

package-lock.json

Lines changed: 20 additions & 20 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
"check": "npm run check:astro && npm run check:worker",
1111
"check:astro": "npm run sync && astro check",
1212
"check:worker": "npm run build:worker && npx tsc --noEmit -p ./worker/tsconfig.json",
13+
"crawl-api-links": "node bin/crawl-api-links.js",
1314
"dev": "npx astro dev",
1415
"format": "npm run format:core && npm run format:data",
1516
"format:core": "npx prettier --write \"**/*.{js,jsx,ts,tsx,mjs,css}\"",
@@ -27,7 +28,7 @@
2728
"@astro-community/astro-embed-youtube": "^0.5.6",
2829
"@astrojs/check": "^0.9.4",
2930
"@astrojs/react": "^3.6.3",
30-
"@astrojs/rss": "^4.0.10",
31+
"@astrojs/rss": "^4.0.11",
3132
"@astrojs/sitemap": "^3.2.1",
3233
"@astrojs/starlight": "^0.29.3",
3334
"@astrojs/starlight-docsearch": "^0.3.0",
@@ -37,13 +38,13 @@
3738
"@cloudflare/vitest-pool-workers": "^0.6.0",
3839
"@cloudflare/workers-types": "^4.20241218.0",
3940
"@codingheads/sticky-header": "^1.0.2",
40-
"@expressive-code/plugin-collapsible-sections": "^0.39.0",
41+
"@expressive-code/plugin-collapsible-sections": "^0.40.0",
4142
"@iarna/toml": "^2.2.5",
4243
"@iconify-json/material-symbols": "^1.2.12",
4344
"@stoplight/json-schema-tree": "^4.0.0",
4445
"@types/hast": "^3.0.4",
4546
"@types/he": "^1.2.3",
46-
"@types/node": "^22.10.5",
47+
"@types/node": "^22.10.6",
4748
"@types/react": "^18.3.12",
4849
"@types/react-dom": "^18.3.1",
4950
"algoliasearch": "^5.19.0",
@@ -76,7 +77,7 @@
7677
"puppeteer": "^24.0.0",
7778
"react": "^18.3.1",
7879
"react-dom": "^18.3.1",
79-
"react-textarea-autosize": "^8.5.6",
80+
"react-textarea-autosize": "^8.5.7",
8081
"redirects-in-workers": "^0.0.5",
8182
"rehype-autolink-headings": "^7.1.0",
8283
"rehype-external-links": "^3.0.0",

public/_redirects

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -793,7 +793,7 @@
793793
/magic-wan/tutorials/pfsense/ /magic-wan/configuration/manually/third-party/pfsense/ 301
794794
/magic-wan/tutorials/sophos-firewall/ /magic-wan/configuration/manually/third-party/sophos-firewall/ 301
795795
/magic-wan/tutorials/warp/ /magic-wan/zero-trust/warp/ 301
796-
/magic-wan/how-to/run-tunnel-health-checks/ /magic-wan/configuration/manually/how-to/tunnel-health-checks/ 301
796+
/magic-wan/how-to/run-tunnel-health-checks/ /magic-wan/configuration/common-settings/tunnel-health-checks/ 301
797797
/magic-wan/reference/probe-construction/ /magic-wan/reference/tunnel-health-checks/ 301
798798
/magic-wan/get-started/configure-tunnels/ /magic-wan/configuration/manually/how-to/configure-tunnels/ 301
799799
/magic-wan/get-started/configure-static-routes/ /magic-wan/configuration/manually/how-to/configure-static-routes/ 301
@@ -802,7 +802,6 @@
802802
/magic-wan/configuration/manually/how-to/check-tunnel-health-dashboard/ /magic-wan/configuration/common-settings/tunnel-health-checks/ 301
803803
/magic-wan/configuration/manually/how-to/configure-magic-tunnel-alerts/ /magic-wan/configuration/common-settings/configure-magic-tunnel-alerts/ 301
804804
/magic-wan/configuration/manually/how-to/enable-magic-roles/ /magic-wan/configuration/common-settings/enable-magic-roles/ 301
805-
/magic-wan/configuration/common-settings/tunnel-health-checks/ /magic-wan/configuration/manually/how-to/tunnel-health-checks/ 301
806805
/magic-wan/configuration/manually/how-to/view-analytics/ /magic-wan/analytics/ 301
807806
/magic-wan/configuration/common-settings/view-analytics/ /magic-wan/analytics/ 301
808807
/magic-wan/prerequisites/ /magic-wan/get-started/ 301

src/components/overrides/Sidebar.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ async function handleGroup(group: Group): Promise<SidebarEntry> {
9595
label: group.label,
9696
order: group.order,
9797
attrs: {},
98-
isCurrent: indexLink.href.slice(1, -1) === Astro.params.slug,
98+
isCurrent: Astro.url.pathname.startsWith(indexLink.href),
9999
} as Link;
100100
}
101101
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
---
2+
link: "/load-balancing/changelog/"
3+
productName: Load Balancing
4+
productLink: "/load-balancing/"
5+
productArea: Application performance
6+
productAreaLink: /fundamentals/reference/changelog/performance/
7+
entries:
8+
- publish_date: "2025-01-16"
9+
title: Update to Pool Health Monitoring
10+
description: |-
11+
We made changes to how we resolve and monitor proxied origins to assess pool health. Our analysis indicates no impact to customer configurations or operations. Contact customer support if you notice any unexpected behavior.
12+
- publish_date: "2024-12-20"
13+
title: Load Balancing with the China Network
14+
description: |-
15+
You can now enable load balancers to be deployed to the [China Network](/china-network/). Refer to the [documentation](/load-balancing/additional-options/load-balancing-china/) for more details.

src/content/changelogs/r2.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,16 @@ entries:
1919
- Public buckets accessible via custom domain now support Smart [Tiered Cache](/r2/buckets/public-buckets/#caching).
2020
- publish_date: "2024-11-19"
2121
description: |-
22-
- R2 [`bucket lifecycle` command](/workers/wrangler/commands/#lifecycle-add) added to Wrangler. Supports listing, adding, and removing object lifecycle rules.
22+
- R2 [`bucket lifecycle` command](/workers/wrangler/commands/#r2-bucket-lifecycle-add) added to Wrangler. Supports listing, adding, and removing object lifecycle rules.
2323
- publish_date: "2024-11-14"
2424
description: |-
25-
- R2 [`bucket info` command](/workers/wrangler/commands/#info-2) added to Wrangler. Displays location of bucket and common metrics.
25+
- R2 [`bucket info` command](/workers/wrangler/commands/r2-bucket-info) added to Wrangler. Displays location of bucket and common metrics.
2626
- publish_date: "2024-11-08"
2727
description: |-
28-
- R2 [`bucket dev-url` command](/workers/wrangler/commands/#dev-url-enable) added to Wrangler. Supports enabling, disabling, and getting status of bucket's [r2.dev public access URL](/r2/buckets/public-buckets/#enable-managed-public-access).
28+
- R2 [`bucket dev-url` command](/workers/wrangler/commands/#r2-bucket-dev-url-enable) added to Wrangler. Supports enabling, disabling, and getting status of bucket's [r2.dev public access URL](/r2/buckets/public-buckets/#enable-managed-public-access).
2929
- publish_date: "2024-11-06"
3030
description: |-
31-
- R2 [`bucket domain` command](/workers/wrangler/commands/#domain-add) added to Wrangler. Supports listing, adding, removing, and updating [R2 bucket custom domains](/r2/buckets/public-buckets/#custom-domains).
31+
- R2 [`bucket domain` command](/workers/wrangler/commands/#r2-bucket-domain-add) added to Wrangler. Supports listing, adding, removing, and updating [R2 bucket custom domains](/r2/buckets/public-buckets/#custom-domains).
3232
- publish_date: "2024-11-01"
3333
description: |-
3434
- Add `minTLS` to response of [list custom domains](/api/resources/r2/subresources/buckets/subresources/domains/subresources/custom/methods/list/) endpoint.

src/content/changelogs/workers.yaml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ entries:
99
description: |-
1010
- **Cloudflare GitHub App Permissions Update**
1111
- Cloudflare is requesting updated permissions for the [Cloudflare GitHub App](https://github.com/apps/cloudflare-workers-and-pages) to enable features like automatically creating a repository on your GitHub account and deploying the new repository for you when getting started with a template. This feature is coming out soon to support a better onboarding experience.
12-
- **Requested permissions:**
12+
- **Requested permissions:**
1313
- [Repository Administration](https://docs.github.com/en/rest/authentication/permissions-required-for-github-apps?apiVersion=2022-11-28#repository-permissions-for-administration) (read/write) to create repositories.
1414
- [Contents](https://docs.github.com/en/rest/authentication/permissions-required-for-github-apps?apiVersion=2022-11-28#repository-permissions-for-contents) (read/write) to push code to the created repositories.
1515
- **Who is impacted:**
@@ -20,6 +20,12 @@ entries:
2020
- publish_date: "2024-11-18"
2121
description: |-
2222
- Updated v8 to version 13.1.
23+
- publish_date: "2024-11-12"
24+
description: |-
25+
- Fixes exception seen when trying to call deleteAll() during a SQLite-backed Durable Object's alarm handler.
26+
- publish_date: "2024-11-08"
27+
description: |-
28+
- Update SQLite to version 3.47.
2329
- publish_date: "2024-10-21"
2430
description: |-
2531
- Fixed encoding of WebSocket pong messages when talking to remote servers. Previously, when a Worker made a WebSocket connection to an external server, the server may have prematurely closed the WebSocket for failure to respond correctly to pings. Client-side connections were not affected.

src/content/docs/ai-gateway/get-started.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ When setting up a new gateway, you can choose between an authenticated and unaut
3232

3333
Next, connect your AI provider to your gateway.
3434

35-
AI Gateway offers multiple endpoints for each Gateway you create - one endpoint per provider, and one Universal Endpoint.
35+
AI Gateway offers multiple endpoints for each Gateway you create - one endpoint per provider, and one Universal Endpoint. To use AI Gateway, you will need to create your own account with each provider and provide your API key. AI Gateway acts as a proxy for these requests, enabling observability, caching, and more.
3636

3737
Additionally, AI Gateway has a [WebSockets API](/ai-gateway/configuration/websockets-api/) which provides a single persistent connection, enabling continuous communication. This API supports all AI providers connected to AI Gateway, including those that do not natively support WebSockets.
3838

src/content/docs/ai-gateway/observability/logging/index.mdx

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ You can store up to 10 million logs per gateway. If your limit is reached, new l
1616

1717
To learn more about your plan limits, refer to [Limits](/ai-gateway/reference/limits/).
1818

19-
We recommend using an authenticated gateway when storing logs to prevent unauthorized access and protecs against invalid requests that can inflate log storage usage and make it harder to find the data you need. Learn more about setting up an [authenticated gateway](/ai-gateway/configuration/authentication/).
19+
We recommend using an authenticated gateway when storing logs to prevent unauthorized access and protects against invalid requests that can inflate log storage usage and make it harder to find the data you need. Learn more about setting up an [authenticated gateway](/ai-gateway/configuration/authentication/).
2020

2121
## Default configuration
2222

@@ -28,7 +28,7 @@ Logs, which include metrics as well as request and response data, are enabled by
2828

2929
To override the default logging behavior set in the settings tab, you can define headers on a per-request basis.
3030

31-
## Collect logs (`cf-aig-collect-log`)
31+
### Collect logs (`cf-aig-collect-log`)
3232

3333
The `cf-aig-collect-log` header allows you to bypass the default log setting for the gateway. If the gateway is configured to save logs, the header will exclude the log for that specific request. Conversely, if logging is disabled at the gateway level, this header will save the log for that request.
3434

@@ -51,8 +51,14 @@ curl https://gateway.ai.cloudflare.com/v1/{account_id}/{gateway_id}/openai/chat/
5151
'
5252
```
5353
54-
## Auto Log Cleanup
54+
## How to delete logs
55+
56+
### Auto Log Cleanup
5557
5658
Enable Auto Log Cleanup to automatically delete the oldest logs once the default storage limit of 10 million logs is reached, ensuring that new logs are always saved without needing manual deletion. Logs are deleted in chunks of 0.1% of the storage limit, which equates to 10,000 logs at a time.
5759
5860
This setting is useful for maintaining continuous logging while staying within the default storage constraints.
61+
62+
### Manual deletion
63+
64+
To manually delete logs, navigate to the Logs tab in the dashboard. Use the available filters such as status, cache, provider, cost, or any other options in the dropdown to refine the logs you wish to delete. Once filtered, select Delete logs to complete the action.

0 commit comments

Comments
 (0)