@@ -36,6 +36,21 @@ const defaultLogsClickhouseClient = singleton(
3636 initializeLogsClickhouseClient
3737) ;
3838
39+ function getLogsListClickhouseSettings ( ) {
40+ return {
41+ max_memory_usage : env . CLICKHOUSE_LOGS_LIST_MAX_MEMORY_USAGE . toString ( ) ,
42+ max_bytes_before_external_sort :
43+ env . CLICKHOUSE_LOGS_LIST_MAX_BYTES_BEFORE_EXTERNAL_SORT . toString ( ) ,
44+ max_threads : env . CLICKHOUSE_LOGS_LIST_MAX_THREADS ,
45+ ...( env . CLICKHOUSE_LOGS_LIST_MAX_ROWS_TO_READ && {
46+ max_rows_to_read : env . CLICKHOUSE_LOGS_LIST_MAX_ROWS_TO_READ . toString ( ) ,
47+ } ) ,
48+ ...( env . CLICKHOUSE_LOGS_LIST_MAX_EXECUTION_TIME && {
49+ max_execution_time : env . CLICKHOUSE_LOGS_LIST_MAX_EXECUTION_TIME ,
50+ } ) ,
51+ } ;
52+ }
53+
3954function initializeLogsClickhouseClient ( ) {
4055 if ( ! env . LOGS_CLICKHOUSE_URL ) {
4156 throw new Error ( "LOGS_CLICKHOUSE_URL is not set" ) ;
@@ -54,18 +69,7 @@ function initializeLogsClickhouseClient() {
5469 logLevel : env . CLICKHOUSE_LOG_LEVEL ,
5570 compression : { request : true } ,
5671 maxOpenConnections : env . CLICKHOUSE_MAX_OPEN_CONNECTIONS ,
57- clickhouseSettings : {
58- max_memory_usage : env . CLICKHOUSE_LOGS_LIST_MAX_MEMORY_USAGE . toString ( ) ,
59- max_bytes_before_external_sort :
60- env . CLICKHOUSE_LOGS_LIST_MAX_BYTES_BEFORE_EXTERNAL_SORT . toString ( ) ,
61- max_threads : env . CLICKHOUSE_LOGS_LIST_MAX_THREADS ,
62- ...( env . CLICKHOUSE_LOGS_LIST_MAX_ROWS_TO_READ && {
63- max_rows_to_read : env . CLICKHOUSE_LOGS_LIST_MAX_ROWS_TO_READ . toString ( ) ,
64- } ) ,
65- ...( env . CLICKHOUSE_LOGS_LIST_MAX_EXECUTION_TIME && {
66- max_execution_time : env . CLICKHOUSE_LOGS_LIST_MAX_EXECUTION_TIME ,
67- } ) ,
68- } ,
72+ clickhouseSettings : getLogsListClickhouseSettings ( ) ,
6973 } ) ;
7074}
7175
@@ -163,18 +167,63 @@ export type ClientType = "standard" | "events" | "replication" | "logs" | "query
163167function buildOrgClickhouseClient ( url : string , clientType : ClientType ) : ClickHouse {
164168 const parsed = new URL ( url ) ;
165169 parsed . searchParams . delete ( "secure" ) ;
166-
167- return new ClickHouse ( {
168- url : parsed . toString ( ) ,
169- name : `org-clickhouse-${ clientType } ` ,
170- keepAlive : {
171- enabled : env . CLICKHOUSE_KEEP_ALIVE_ENABLED === "1" ,
172- idleSocketTtl : env . CLICKHOUSE_KEEP_ALIVE_IDLE_SOCKET_TTL_MS ,
173- } ,
174- logLevel : env . CLICKHOUSE_LOG_LEVEL ,
175- compression : { request : true } ,
176- maxOpenConnections : env . CLICKHOUSE_MAX_OPEN_CONNECTIONS ,
177- } ) ;
170+ const name = `org-clickhouse-${ clientType } ` ;
171+
172+ switch ( clientType ) {
173+ case "events" :
174+ return new ClickHouse ( {
175+ url : parsed . toString ( ) ,
176+ name,
177+ keepAlive : {
178+ enabled : env . EVENTS_CLICKHOUSE_KEEP_ALIVE_ENABLED === "1" ,
179+ idleSocketTtl : env . EVENTS_CLICKHOUSE_KEEP_ALIVE_IDLE_SOCKET_TTL_MS ,
180+ } ,
181+ logLevel : env . EVENTS_CLICKHOUSE_LOG_LEVEL ,
182+ compression : {
183+ request : env . EVENTS_CLICKHOUSE_COMPRESSION_REQUEST === "1" ,
184+ } ,
185+ maxOpenConnections : env . EVENTS_CLICKHOUSE_MAX_OPEN_CONNECTIONS ,
186+ } ) ;
187+ case "replication" :
188+ return new ClickHouse ( {
189+ url : parsed . toString ( ) ,
190+ name,
191+ keepAlive : {
192+ enabled : env . RUN_REPLICATION_KEEP_ALIVE_ENABLED === "1" ,
193+ idleSocketTtl : env . RUN_REPLICATION_KEEP_ALIVE_IDLE_SOCKET_TTL_MS ,
194+ } ,
195+ logLevel : env . RUN_REPLICATION_CLICKHOUSE_LOG_LEVEL ,
196+ compression : { request : true } ,
197+ maxOpenConnections : env . RUN_REPLICATION_MAX_OPEN_CONNECTIONS ,
198+ } ) ;
199+ case "logs" :
200+ return new ClickHouse ( {
201+ url : parsed . toString ( ) ,
202+ name,
203+ keepAlive : {
204+ enabled : env . CLICKHOUSE_KEEP_ALIVE_ENABLED === "1" ,
205+ idleSocketTtl : env . CLICKHOUSE_KEEP_ALIVE_IDLE_SOCKET_TTL_MS ,
206+ } ,
207+ logLevel : env . CLICKHOUSE_LOG_LEVEL ,
208+ compression : { request : true } ,
209+ maxOpenConnections : env . CLICKHOUSE_MAX_OPEN_CONNECTIONS ,
210+ clickhouseSettings : getLogsListClickhouseSettings ( ) ,
211+ } ) ;
212+ case "standard" :
213+ case "query" :
214+ case "admin" :
215+ return new ClickHouse ( {
216+ url : parsed . toString ( ) ,
217+ name,
218+ keepAlive : {
219+ enabled : env . CLICKHOUSE_KEEP_ALIVE_ENABLED === "1" ,
220+ idleSocketTtl : env . CLICKHOUSE_KEEP_ALIVE_IDLE_SOCKET_TTL_MS ,
221+ } ,
222+ logLevel : env . CLICKHOUSE_LOG_LEVEL ,
223+ compression : { request : true } ,
224+ maxOpenConnections : env . CLICKHOUSE_MAX_OPEN_CONNECTIONS ,
225+ } ) ;
226+ }
178227}
179228
180229// ---------------------------------------------------------------------------
0 commit comments