1- import { type LoaderFunctionArgs , type ActionFunctionArgs , json } from "@remix-run/server-runtime" ;
2- import { type MetaFunction , useFetcher , useRevalidator } from "@remix-run/react" ;
1+ import { parse } from "@conform-to/zod" ;
32import { BellAlertIcon } from "@heroicons/react/20/solid" ;
3+ import { type MetaFunction , useFetcher , useRevalidator } from "@remix-run/react" ;
4+ import { type ActionFunctionArgs , json , type LoaderFunctionArgs } from "@remix-run/server-runtime" ;
45import {
56 IconAlarmSnooze as IconAlarmSnoozeBase ,
67 IconBugFilled ,
78 IconCircleDotted ,
89} from "@tabler/icons-react" ;
9- import { parse } from "@conform-to/zod" ;
10- import { z } from "zod" ;
11- import { ErrorStatusBadge } from "~/components/errors/ErrorStatusBadge" ;
12- import { ServiceValidationError } from "~/v3/services/baseService.server" ;
13- import { TypedAwait , typeddefer , useTypedLoaderData } from "remix-typedjson" ;
14- import { requireUser , requireUserId } from "~/services/session.server" ;
15- import {
16- EnvironmentParamSchema ,
17- v3CreateBulkActionPath ,
18- v3ErrorsPath ,
19- v3RunsPath ,
20- } from "~/utils/pathBuilder" ;
21- import { findProjectBySlug } from "~/models/project.server" ;
22- import { findEnvironmentBySlug } from "~/models/runtimeEnvironment.server" ;
23- import {
24- ErrorGroupPresenter ,
25- type ErrorGroupActivity ,
26- type ErrorGroupActivityVersions ,
27- type ErrorGroupOccurrences ,
28- type ErrorGroupSummary ,
29- type ErrorGroupState ,
30- } from "~/presenters/v3/ErrorGroupPresenter.server" ;
31- import { type NextRunList } from "~/presenters/v3/NextRunListPresenter.server" ;
32- import { $replica } from "~/db.server" ;
33- import {
34- clickhouseFactory ,
35- getDefaultClickhouseClient ,
36- getDefaultLogsClickhouseClient ,
37- } from "~/services/clickhouse/clickhouseFactory.server" ;
38- import { NavBar , PageAccessories , PageTitle } from "~/components/primitives/PageHeader" ;
39- import { PageBody } from "~/components/layout/AppLayout" ;
40- import {
41- ResizableHandle ,
42- ResizablePanel ,
43- ResizablePanelGroup ,
44- } from "~/components/primitives/Resizable" ;
10+ import { ErrorId } from "@trigger.dev/core/v3/isomorphic" ;
11+ import { isPast } from "date-fns" ;
4512import { AnimatePresence , motion } from "framer-motion" ;
4613import { Suspense , useEffect , useMemo , useRef , useState } from "react" ;
47- import { Spinner } from "~/components/primitives/Spinner" ;
48- import { Paragraph } from "~/components/primitives/Paragraph" ;
49- import { Callout } from "~/components/primitives/Callout" ;
50- import { Header2 , Header3 } from "~/components/primitives/Headers" ;
51-
52- import { formatDistanceToNow , isPast } from "date-fns" ;
53-
54- import * as Property from "~/components/primitives/PropertyTable" ;
55- import { TaskRunsTable } from "~/components/runs/v3/TaskRunsTable" ;
56- import { DateTime , RelativeDateTime } from "~/components/primitives/DateTime" ;
57- import { ErrorId } from "@trigger.dev/core/v3/isomorphic" ;
5814import {
5915 Bar ,
6016 BarChart ,
@@ -65,31 +21,68 @@ import {
6521 XAxis ,
6622 YAxis ,
6723} from "recharts" ;
68- import TooltipPortal from "~/components/primitives/TooltipPortal" ;
69- import { TimeFilter , timeFilterFromTo } from "~/components/runs/v3/SharedFilters" ;
70- import { useOptimisticLocation } from "~/hooks/useOptimisticLocation" ;
71- import { DirectionSchema , ListPagination } from "~/components/ListPagination" ;
72- import { Button , LinkButton } from "~/components/primitives/Buttons" ;
24+ import { TypedAwait , typeddefer , useTypedLoaderData } from "remix-typedjson" ;
25+ import { z } from "zod" ;
7326import { ListCheckedIcon } from "~/assets/icons/ListCheckedIcon" ;
74- import { useOrganization } from "~/hooks/useOrganizations" ;
75- import { useProject } from "~/hooks/useProject" ;
76- import { useEnvironment } from "~/hooks/useEnvironment" ;
7727import { RunsIcon } from "~/assets/icons/RunsIcon" ;
78- import type { TaskRunListSearchFilters } from "~/components/runs/v3/RunFilters" ;
79- import { useSearchParams } from "~/hooks/useSearchParam" ;
80- import { CopyableText } from "~/components/primitives/CopyableText" ;
81- import { cn } from "~/utils/cn" ;
82- import { LogsVersionFilter } from "~/components/logs/LogsVersionFilter" ;
8328import { CodeBlock } from "~/components/code/CodeBlock" ;
84-
85- import { Popover , PopoverArrowTrigger , PopoverContent } from "~/components/primitives/Popover" ;
86- import { ErrorGroupActions } from "~/v3/services/errorGroupActions.server" ;
29+ import { ErrorStatusBadge } from "~/components/errors/ErrorStatusBadge" ;
8730import {
88- ErrorStatusMenuItems ,
8931 CustomIgnoreDialog ,
32+ ErrorStatusMenuItems ,
9033 statusActionToastMessage ,
9134} from "~/components/errors/ErrorStatusMenu" ;
35+ import { PageBody } from "~/components/layout/AppLayout" ;
36+ import { DirectionSchema , ListPagination } from "~/components/ListPagination" ;
37+ import { LogsVersionFilter } from "~/components/logs/LogsVersionFilter" ;
38+ import { LinkButton } from "~/components/primitives/Buttons" ;
39+ import { Callout } from "~/components/primitives/Callout" ;
40+ import { CopyableText } from "~/components/primitives/CopyableText" ;
41+ import { DateTime , RelativeDateTime } from "~/components/primitives/DateTime" ;
42+ import { Header2 , Header3 } from "~/components/primitives/Headers" ;
43+ import { NavBar , PageAccessories , PageTitle } from "~/components/primitives/PageHeader" ;
44+ import { Paragraph } from "~/components/primitives/Paragraph" ;
45+ import { Popover , PopoverArrowTrigger , PopoverContent } from "~/components/primitives/Popover" ;
46+ import * as Property from "~/components/primitives/PropertyTable" ;
47+ import {
48+ ResizableHandle ,
49+ ResizablePanel ,
50+ ResizablePanelGroup ,
51+ } from "~/components/primitives/Resizable" ;
52+ import { Spinner } from "~/components/primitives/Spinner" ;
9253import { useToast } from "~/components/primitives/Toast" ;
54+ import TooltipPortal from "~/components/primitives/TooltipPortal" ;
55+ import type { TaskRunListSearchFilters } from "~/components/runs/v3/RunFilters" ;
56+ import { TimeFilter , timeFilterFromTo } from "~/components/runs/v3/SharedFilters" ;
57+ import { TaskRunsTable } from "~/components/runs/v3/TaskRunsTable" ;
58+ import { $replica } from "~/db.server" ;
59+ import { useEnvironment } from "~/hooks/useEnvironment" ;
60+ import { useOptimisticLocation } from "~/hooks/useOptimisticLocation" ;
61+ import { useOrganization } from "~/hooks/useOrganizations" ;
62+ import { useProject } from "~/hooks/useProject" ;
63+ import { useSearchParams } from "~/hooks/useSearchParam" ;
64+ import { findProjectBySlug } from "~/models/project.server" ;
65+ import { findEnvironmentBySlug } from "~/models/runtimeEnvironment.server" ;
66+ import {
67+ type ErrorGroupActivity ,
68+ type ErrorGroupActivityVersions ,
69+ type ErrorGroupOccurrences ,
70+ ErrorGroupPresenter ,
71+ type ErrorGroupState ,
72+ type ErrorGroupSummary ,
73+ } from "~/presenters/v3/ErrorGroupPresenter.server" ;
74+ import { type NextRunList } from "~/presenters/v3/NextRunListPresenter.server" ;
75+ import { clickhouseFactory } from "~/services/clickhouse/clickhouseFactory.server" ;
76+ import { requireUser , requireUserId } from "~/services/session.server" ;
77+ import { cn } from "~/utils/cn" ;
78+ import {
79+ EnvironmentParamSchema ,
80+ v3CreateBulkActionPath ,
81+ v3ErrorsPath ,
82+ v3RunsPath ,
83+ } from "~/utils/pathBuilder" ;
84+ import { ServiceValidationError } from "~/v3/services/baseService.server" ;
85+ import { ErrorGroupActions } from "~/v3/services/errorGroupActions.server" ;
9386
9487export const meta : MetaFunction < typeof loader > = ( { data } ) => {
9588 return [
@@ -251,7 +244,7 @@ export const loader = async ({ request, params }: LoaderFunctionArgs) => {
251244
252245 const clickhouseClient = await clickhouseFactory . getClickhouseForOrganization (
253246 environment . organizationId ,
254- "query "
247+ "logs "
255248 ) ;
256249
257250 const presenter = new ErrorGroupPresenter ( $replica , clickhouseClient , clickhouseClient ) ;
0 commit comments