Skip to content

Commit f9f8652

Browse files
authored
Merge branch 'main' into docs/prisma-7.x-caching-issue
2 parents 7469eae + d5a27f0 commit f9f8652

File tree

13 files changed

+83
-27
lines changed

13 files changed

+83
-27
lines changed

apps/webapp/app/components/navigation/SideMenu.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -453,7 +453,7 @@ export function SideMenu({
453453

454454
{(user.admin || user.isImpersonating || featureFlags.hasQueryAccess) && (
455455
<SideMenuSection
456-
title="Insights"
456+
title="Observability"
457457
isSideMenuCollapsed={isCollapsed}
458458
itemSpacingClassName="space-y-0"
459459
initialCollapsed={getSectionCollapsed(
@@ -484,7 +484,7 @@ export function SideMenu({
484484
isCollapsed={isCollapsed}
485485
/>
486486
<SideMenuItem
487-
name="Metrics"
487+
name="Dashboards"
488488
icon={ChartBarIcon}
489489
activeIconColor="text-metrics"
490490
inactiveIconColor="text-metrics"

apps/webapp/app/presenters/v3/LimitsPresenter.server.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -313,8 +313,9 @@ export class LimitsPresenter extends BasePresenter {
313313
}
314314
: null,
315315
batchProcessingConcurrency: {
316-
name: "Batch processing concurrency",
317-
description: "Controls how many batch items can be processed simultaneously.",
316+
name: "Batch trigger processing concurrency",
317+
description:
318+
"When you send a batch trigger, we convert it into individual runs in parallel. This is the maximum number of batches being converted into runs at once. It does not limit how many batch runs can be executing.",
318319
limit: batchConcurrencyConfig.processingConcurrency,
319320
currentUsage: 0,
320321
source: batchConcurrencySource,

apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.env.$envParam.metrics.$dashboardKey/route.tsx renamed to apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.env.$envParam.dashboards.$dashboardKey/route.tsx

File renamed without changes.

apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.env.$envParam.metrics.custom.$dashboardId/route.tsx renamed to apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.env.$envParam.dashboards.custom.$dashboardId/route.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ import {
5555
v3BillingPath,
5656
v3BuiltInDashboardPath,
5757
} from "~/utils/pathBuilder";
58-
import { MetricDashboard } from "../_app.orgs.$organizationSlug.projects.$projectParam.env.$envParam.metrics.$dashboardKey/route";
58+
import { MetricDashboard } from "../_app.orgs.$organizationSlug.projects.$projectParam.env.$envParam.dashboards.$dashboardKey/route";
5959
import { useCurrentPlan } from "../_app.orgs.$organizationSlug/route";
6060
import { Type } from "lucide-react";
6161

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import { redirect, type LoaderFunctionArgs } from "@remix-run/server-runtime";
2+
import { z } from "zod";
3+
import { EnvironmentParamSchema, v3BuiltInDashboardPath } from "~/utils/pathBuilder";
4+
5+
const ParamSchema = EnvironmentParamSchema.extend({
6+
dashboardKey: z.string(),
7+
});
8+
9+
export const loader = async ({ params }: LoaderFunctionArgs) => {
10+
const { organizationSlug, projectParam, envParam, dashboardKey } = ParamSchema.parse(params);
11+
return redirect(
12+
v3BuiltInDashboardPath(
13+
{ slug: organizationSlug },
14+
{ slug: projectParam },
15+
{ slug: envParam },
16+
dashboardKey
17+
),
18+
301
19+
);
20+
};
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import { redirect, type LoaderFunctionArgs } from "@remix-run/server-runtime";
2+
import { z } from "zod";
3+
import { EnvironmentParamSchema, v3CustomDashboardPath } from "~/utils/pathBuilder";
4+
5+
const ParamSchema = EnvironmentParamSchema.extend({
6+
dashboardId: z.string(),
7+
});
8+
9+
export const loader = async ({ params }: LoaderFunctionArgs) => {
10+
const { organizationSlug, projectParam, envParam, dashboardId } = ParamSchema.parse(params);
11+
return redirect(
12+
v3CustomDashboardPath(
13+
{ slug: organizationSlug },
14+
{ slug: projectParam },
15+
{ slug: envParam },
16+
{ friendlyId: dashboardId }
17+
),
18+
301
19+
);
20+
};

apps/webapp/app/utils/pathBuilder.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -284,7 +284,7 @@ export function v3CustomDashboardPath(
284284
environment: EnvironmentForPath,
285285
dashboard: { friendlyId: string }
286286
) {
287-
return `${v3EnvironmentPath(organization, project, environment)}/metrics/custom/${
287+
return `${v3EnvironmentPath(organization, project, environment)}/dashboards/custom/${
288288
dashboard.friendlyId
289289
}`;
290290
}
@@ -295,7 +295,7 @@ export function v3BuiltInDashboardPath(
295295
environment: EnvironmentForPath,
296296
key: string
297297
) {
298-
return `${v3EnvironmentPath(organization, project, environment)}/metrics/${key}`;
298+
return `${v3EnvironmentPath(organization, project, environment)}/dashboards/${key}`;
299299
}
300300

301301
export function v3TestTaskPath(

docs/docs.json

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -180,8 +180,8 @@
180180
]
181181
},
182182
{
183-
"group": "Insights",
184-
"pages": ["insights/query", "insights/metrics"]
183+
"group": "Observability",
184+
"pages": ["observability/query", "observability/dashboards"]
185185
},
186186
{
187187
"group": "Using the Dashboard",
@@ -239,11 +239,20 @@
239239
},
240240
{
241241
"group": "Tasks API",
242-
"pages": ["management/tasks/trigger", "management/tasks/batch-trigger", "management/tasks/trigger-batch"]
242+
"pages": [
243+
"management/tasks/trigger",
244+
"management/tasks/batch-trigger",
245+
"management/tasks/trigger-batch"
246+
]
243247
},
244248
{
245249
"group": "Batches API",
246-
"pages": ["management/batches/create", "management/batches/retrieve", "management/batches/retrieve-results", "management/batches/stream-items"]
250+
"pages": [
251+
"management/batches/create",
252+
"management/batches/retrieve",
253+
"management/batches/retrieve-results",
254+
"management/batches/stream-items"
255+
]
247256
},
248257
{
249258
"group": "Runs API",
@@ -712,6 +721,14 @@
712721
{
713722
"source": "/upgrade-to-v4",
714723
"destination": "/migrating-from-v3"
724+
},
725+
{
726+
"source": "/insights/query",
727+
"destination": "/observability/query"
728+
},
729+
{
730+
"source": "/insights/metrics",
731+
"destination": "/observability/dashboards"
715732
}
716733
]
717734
}

docs/limits.mdx

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -125,18 +125,16 @@ Batch triggering uses a token bucket algorithm to rate limit the number of runs
125125
and react to rate limits in your code.
126126
</Note>
127127

128-
## Batch processing concurrency
128+
## Batch trigger processing concurrency
129129

130-
The number of batches that can be processed concurrently per environment.
130+
When you send a batch trigger, we convert it into individual runs. This limit controls the maximum number of batches being converted into runs simultaneously per environment. It is not a limit on how many batch runs can be executing at once.
131131

132132
| Pricing tier | Limit |
133133
| :----------- | :-------------------- |
134134
| Free | 1 concurrent batch |
135135
| Hobby | 10 concurrent batches |
136136
| Pro | 10 concurrent batches |
137137

138-
This limits how many batches can have their items actively being processed into runs at the same time.
139-
140138
## Log retention
141139

142140
| Pricing tier | Limit |

docs/logging.mdx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ export const customTrace = task({
8282

8383
Trigger.dev collects system and runtime metrics automatically for deployed tasks, and provides an API for recording custom metrics using OpenTelemetry.
8484

85-
You can view metrics in the [Metrics dashboards](/insights/metrics), query them with [TRQL](/insights/query), and export them to external services via [telemetry exporters](/config/config-file#telemetry-exporters).
85+
You can view metrics in the [Dashboards](/observability/dashboards), query them with [TRQL](/observability/query), and export them to external services via [telemetry exporters](/config/config-file#telemetry-exporters).
8686

8787
### Custom metrics API
8888

@@ -175,7 +175,7 @@ All metrics (both automatic and custom) are tagged with run context so you can f
175175

176176
### Querying metrics
177177

178-
Use [TRQL](/insights/query) to query metrics data. For example, to see average CPU utilization over time:
178+
Use [TRQL](/observability/query) to query metrics data. For example, to see average CPU utilization over time:
179179

180180
```sql
181181
SELECT
@@ -188,7 +188,7 @@ ORDER BY timeBucket
188188
LIMIT 1000
189189
```
190190

191-
See the [Query page](/insights/query#metrics-table-columns) for the full `metrics` table schema.
191+
See the [Query page](/observability/query#metrics-table-columns) for the full `metrics` table schema.
192192

193193
### Exporting metrics
194194

0 commit comments

Comments
 (0)