Skip to content

Commit 9121cbc

Browse files
committed
Move the ClickHouse settings to the dedicated client
1 parent 00f34be commit 9121cbc

File tree

4 files changed

+17
-71
lines changed

4 files changed

+17
-71
lines changed

apps/webapp/app/env.server.ts

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1180,7 +1180,7 @@ const EnvironmentSchema = z
11801180
CLICKHOUSE_LOG_LEVEL: z.enum(["log", "error", "warn", "info", "debug"]).default("info"),
11811181
CLICKHOUSE_COMPRESSION_REQUEST: z.string().default("1"),
11821182

1183-
// Logs List Query Settings (for paginated log views)
1183+
// Logs Query Settings
11841184
CLICKHOUSE_LOGS_LIST_MAX_MEMORY_USAGE: z.coerce.number().int().default(1_000_000_000),
11851185
CLICKHOUSE_LOGS_LIST_MAX_BYTES_BEFORE_EXTERNAL_SORT: z.coerce
11861186
.number()
@@ -1190,11 +1190,6 @@ const EnvironmentSchema = z
11901190
CLICKHOUSE_LOGS_LIST_MAX_ROWS_TO_READ: z.coerce.number().int().default(10_000_000),
11911191
CLICKHOUSE_LOGS_LIST_MAX_EXECUTION_TIME: z.coerce.number().int().default(120),
11921192

1193-
// Logs Detail Query Settings (for single log views)
1194-
CLICKHOUSE_LOGS_DETAIL_MAX_MEMORY_USAGE: z.coerce.number().int().default(64_000_000),
1195-
CLICKHOUSE_LOGS_DETAIL_MAX_THREADS: z.coerce.number().int().default(2),
1196-
CLICKHOUSE_LOGS_DETAIL_MAX_EXECUTION_TIME: z.coerce.number().int().default(60),
1197-
11981193
// Query feature flag
11991194
QUERY_FEATURE_ENABLED: z.string().default("1"),
12001195

apps/webapp/app/services/clickhouseInstance.server.ts

Lines changed: 12 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -12,29 +12,6 @@ function initializeClickhouseClient() {
1212

1313
console.log(`🗃️ Clickhouse service enabled to host ${url.host}`);
1414

15-
// Build logs query settings from environment variables
16-
const logsQuerySettings = {
17-
list: {
18-
max_memory_usage: env.CLICKHOUSE_LOGS_LIST_MAX_MEMORY_USAGE.toString(),
19-
max_bytes_before_external_sort:
20-
env.CLICKHOUSE_LOGS_LIST_MAX_BYTES_BEFORE_EXTERNAL_SORT.toString(),
21-
max_threads: env.CLICKHOUSE_LOGS_LIST_MAX_THREADS,
22-
...(env.CLICKHOUSE_LOGS_LIST_MAX_ROWS_TO_READ && {
23-
max_rows_to_read: env.CLICKHOUSE_LOGS_LIST_MAX_ROWS_TO_READ.toString(),
24-
}),
25-
...(env.CLICKHOUSE_LOGS_LIST_MAX_EXECUTION_TIME && {
26-
max_execution_time: env.CLICKHOUSE_LOGS_LIST_MAX_EXECUTION_TIME,
27-
}),
28-
},
29-
detail: {
30-
max_memory_usage: env.CLICKHOUSE_LOGS_DETAIL_MAX_MEMORY_USAGE.toString(),
31-
max_threads: env.CLICKHOUSE_LOGS_DETAIL_MAX_THREADS,
32-
...(env.CLICKHOUSE_LOGS_DETAIL_MAX_EXECUTION_TIME && {
33-
max_execution_time: env.CLICKHOUSE_LOGS_DETAIL_MAX_EXECUTION_TIME,
34-
}),
35-
},
36-
};
37-
3815
const clickhouse = new ClickHouse({
3916
url: url.toString(),
4017
name: "clickhouse-instance",
@@ -47,7 +24,6 @@ function initializeClickhouseClient() {
4724
request: true,
4825
},
4926
maxOpenConnections: env.CLICKHOUSE_MAX_OPEN_CONNECTIONS,
50-
logsQuerySettings,
5127
});
5228

5329
return clickhouse;
@@ -68,29 +44,6 @@ function initializeLogsClickhouseClient() {
6844
// Remove secure param
6945
url.searchParams.delete("secure");
7046

71-
// Build logs query settings from environment variables
72-
const logsQuerySettings = {
73-
list: {
74-
max_memory_usage: env.CLICKHOUSE_LOGS_LIST_MAX_MEMORY_USAGE.toString(),
75-
max_bytes_before_external_sort:
76-
env.CLICKHOUSE_LOGS_LIST_MAX_BYTES_BEFORE_EXTERNAL_SORT.toString(),
77-
max_threads: env.CLICKHOUSE_LOGS_LIST_MAX_THREADS,
78-
...(env.CLICKHOUSE_LOGS_LIST_MAX_ROWS_TO_READ && {
79-
max_rows_to_read: env.CLICKHOUSE_LOGS_LIST_MAX_ROWS_TO_READ.toString(),
80-
}),
81-
...(env.CLICKHOUSE_LOGS_LIST_MAX_EXECUTION_TIME && {
82-
max_execution_time: env.CLICKHOUSE_LOGS_LIST_MAX_EXECUTION_TIME,
83-
}),
84-
},
85-
detail: {
86-
max_memory_usage: env.CLICKHOUSE_LOGS_DETAIL_MAX_MEMORY_USAGE.toString(),
87-
max_threads: env.CLICKHOUSE_LOGS_DETAIL_MAX_THREADS,
88-
...(env.CLICKHOUSE_LOGS_DETAIL_MAX_EXECUTION_TIME && {
89-
max_execution_time: env.CLICKHOUSE_LOGS_DETAIL_MAX_EXECUTION_TIME,
90-
}),
91-
},
92-
};
93-
9447
return new ClickHouse({
9548
url: url.toString(),
9649
name: "logs-clickhouse",
@@ -103,7 +56,18 @@ function initializeLogsClickhouseClient() {
10356
request: true,
10457
},
10558
maxOpenConnections: env.CLICKHOUSE_MAX_OPEN_CONNECTIONS,
106-
logsQuerySettings,
59+
clickhouseSettings: {
60+
max_memory_usage: env.CLICKHOUSE_LOGS_LIST_MAX_MEMORY_USAGE.toString(),
61+
max_bytes_before_external_sort:
62+
env.CLICKHOUSE_LOGS_LIST_MAX_BYTES_BEFORE_EXTERNAL_SORT.toString(),
63+
max_threads: env.CLICKHOUSE_LOGS_LIST_MAX_THREADS,
64+
...(env.CLICKHOUSE_LOGS_LIST_MAX_ROWS_TO_READ && {
65+
max_rows_to_read: env.CLICKHOUSE_LOGS_LIST_MAX_ROWS_TO_READ.toString(),
66+
}),
67+
...(env.CLICKHOUSE_LOGS_LIST_MAX_EXECUTION_TIME && {
68+
max_execution_time: env.CLICKHOUSE_LOGS_LIST_MAX_EXECUTION_TIME,
69+
}),
70+
},
10771
});
10872
}
10973

internal-packages/clickhouse/src/index.ts

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -61,11 +61,6 @@ export type { OutputColumnMetadata } from "@internal/tsql";
6161
// Errors
6262
export { QueryError } from "./client/errors.js";
6363

64-
export type LogsQuerySettings = {
65-
list?: ClickHouseSettings;
66-
detail?: ClickHouseSettings;
67-
};
68-
6964
export type ClickhouseCommonConfig = {
7065
keepAlive?: {
7166
enabled?: boolean;
@@ -80,7 +75,6 @@ export type ClickhouseCommonConfig = {
8075
response?: boolean;
8176
};
8277
maxOpenConnections?: number;
83-
logsQuerySettings?: LogsQuerySettings;
8478
};
8579

8680
export type ClickHouseConfig =
@@ -104,11 +98,9 @@ export class ClickHouse {
10498
public readonly writer: ClickhouseWriter;
10599
private readonly logger: Logger;
106100
private _splitClients: boolean;
107-
private readonly logsQuerySettings?: LogsQuerySettings;
108101

109102
constructor(config: ClickHouseConfig) {
110103
this.logger = config.logger ?? new Logger("ClickHouse", config.logLevel ?? "debug");
111-
this.logsQuerySettings = config.logsQuerySettings;
112104

113105
if (config.url) {
114106
const url = new URL(config.url);
@@ -220,13 +212,13 @@ export class ClickHouse {
220212
traceSummaryQueryBuilder: getTraceSummaryQueryBuilderV2(this.reader),
221213
traceDetailedSummaryQueryBuilder: getTraceDetailedSummaryQueryBuilderV2(this.reader),
222214
spanDetailsQueryBuilder: getSpanDetailsQueryBuilderV2(this.reader),
223-
logDetailQueryBuilder: getLogDetailQueryBuilderV2(this.reader, this.logsQuerySettings?.detail),
215+
logDetailQueryBuilder: getLogDetailQueryBuilderV2(this.reader),
224216
};
225217
}
226218

227219
get taskEventsSearch() {
228220
return {
229-
logsListQueryBuilder: getLogsSearchListQueryBuilder(this.reader, this.logsQuerySettings?.list),
221+
logsListQueryBuilder: getLogsSearchListQueryBuilder(this.reader),
230222
};
231223
}
232224
}

internal-packages/clickhouse/src/taskEvents.ts

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -256,10 +256,7 @@ export const LogsSearchListResult = z.object({
256256

257257
export type LogsSearchListResult = z.output<typeof LogsSearchListResult>;
258258

259-
export function getLogsSearchListQueryBuilder(
260-
ch: ClickhouseReader,
261-
settings?: ClickHouseSettings
262-
) {
259+
export function getLogsSearchListQueryBuilder(ch: ClickhouseReader) {
263260
return ch.queryBuilderFast<LogsSearchListResult>({
264261
name: "getLogsSearchList",
265262
table: "trigger_dev.task_events_search_v1",
@@ -280,7 +277,6 @@ export function getLogsSearchListQueryBuilder(
280277
"attributes_text",
281278
"triggered_timestamp",
282279
],
283-
settings,
284280
});
285281
}
286282

@@ -304,7 +300,7 @@ export const LogDetailV2Result = z.object({
304300

305301
export type LogDetailV2Result = z.output<typeof LogDetailV2Result>;
306302

307-
export function getLogDetailQueryBuilderV2(ch: ClickhouseReader, settings?: ClickHouseSettings) {
303+
export function getLogDetailQueryBuilderV2(ch: ClickhouseReader) {
308304
return ch.queryBuilderFast<LogDetailV2Result>({
309305
name: "getLogDetail",
310306
table: "trigger_dev.task_events_v2",
@@ -324,6 +320,5 @@ export function getLogDetailQueryBuilderV2(ch: ClickhouseReader, settings?: Clic
324320
"duration",
325321
"attributes_text",
326322
],
327-
settings,
328323
});
329324
}

0 commit comments

Comments
 (0)