Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

ClickHouse retry logs print CLICKHOUSE_URL with its password

Aperta Adatta ai principianti
#551 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

@ppjsw ci sta già lavorando.

Dal 20/10/2026.

  • #574 di @ppjsw — aperta

Valutazione

Difficoltà
1/5
Tempo stimato
1-3 ore
Idoneità per principianti
92/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
typescript

Direzione di ricerca

Inizia con la registrazione dei retry in packages/db/src/clickhouse/round-robin.ts ed esamina maskUrlCredentials in client.ts. Le due chiamate di log indicate devono usare un URL mascherato anziché slot.url. Verifica con la riproduzione del retry che i log di API e worker preservino l’URL del nodo omettendone le credenziali.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

When a ClickHouse request is retried, the round-robin client logs the node's URL exactly as configured. If CLICKHOUSE_URL carries credentials (http://user:password@host:8123/db, the form the self-hosting docs use), the password ends up in the logs of the api and the worker.

Where (main, a887576): packages/db/src/clickhouse/round-robin.ts

  • logger.info({ url: slot.url, attempt }, 'CH operation succeeded after retry') (~line 305)
  • logger.warn({ ..., url: slot.url, ... }, 'CH node unreachable; ...') (~line 340)

slot.url comes from new RoundRobinPicker(clients, clickhouseUrls, ...) in client.ts (line 192), which gets the raw URLs. maskUrlCredentials already exists in client.ts but is only applied to the urls reported at line 217.

To reproduce: set CLICKHOUSE_URL=http://openpanel:secret@clickhouse:8123/openpanel and restart ClickHouse while the worker is running. The worker logs "url":"http://openpanel:secret@clickhouse:8123/openpanel" on each retry.

Suggested fix: give the picker masked URLs for logging (or mask slot.url in those two log calls), as redactConnectionUrls now does for the migration banner.

On 2.3.0 (the current Docker Hub release) the migration banner also prints DATABASE_URL and CLICKHOUSE_URL unredacted. That is already fixed on main, but self-hosters on 2.3.0 are exposed until a release ships it.

Lingua principale
TypeScript
Stelle
7.1k
Fork
516
Merge medio
1g 2h
PR unite (30g)
18

Preparare l'ambiente

  • Include un Dockerfile o un file Docker Compose
  • Nessun modello di pull request
  • Nessuna guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di Openpanel-dev/openpanel

Tutte le issue di Openpanel-dev/openpanel

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.