Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

helm chart 0.28.0 schema-migrator fatal error: failed to parse dsn #305

Open
voriol opened this issue Oct 25, 2023 · 5 comments
Open

helm chart 0.28.0 schema-migrator fatal error: failed to parse dsn #305

voriol opened this issue Oct 25, 2023 · 5 comments
Assignees

Comments

@voriol
Copy link

voriol commented Oct 25, 2023

Today, I update to the latest version of helm chart (2.8.0) and latest version of otel-collector (0.79.11, SigNoz/signoz-otel-collector#180) and I have received the following error in the schema-migrator:

schema-migrator {"level":"fatal","timestamp":"2023-10-25T07:03:10.780Z","caller":"signozschemamigrator/migrate.go:79","msg":"Failed to create migration manager","component":"migrate cli","error":"failed to parse dsn: parse \"tcp://<external-clickhouse-server>:%!s(float64=<external-clickhouse-port>)?username=**********&password=ignored\": invalid port \":%!s(float64=<external-clickhouse-port>)\" after host","stacktrace":"main.main\n\t/home/runner/work/signoz-otel-collector/signoz-otel-collector/cmd/signozschemamigrator/migrate.go:79\nruntime.main\n\t/opt/hostedtoolcache/go/1.20.10/x64/src/runtime/proc.go:250"}

Does anyone have an idea what could be happening? There seems to be a problem when building the clickhouse endpoint url.

Thanks

@prashant-shahi
Copy link
Member

Something with the ClickHouse DNS isn't correct. It seems to be unable to parse.

Would it be possible for you to share your override values of the externalClickhouse section? Feel free to redact the sensitive information with dummy values which look identical in nature.

@voriol
Copy link
Author

voriol commented Oct 26, 2023

For sure:

  ## External clickhouse configuration
  ## This is required when clickhouse.enabled is false
  ##
  externalClickhouse:
    # -- Host of the external cluster.
    host: hostname.domain
    # -- Name of the external cluster to run DDL queries on.
    cluster: external_cluster
    # -- Database name for the external cluster
    database: signoz_metrics
    # -- Clickhouse trace database (SigNoz Traces)
    traceDatabase: signoz_traces
    # -- User name for the external cluster to connect to the external cluster as
    user: "someUername"
    # -- Password for the cluster. Ignored if existingClickhouse.existingSecret is set
    password: "ignored"
    # -- Name of an existing Kubernetes secret object containing the password
    existingSecret: clickhouse-password
    # -- Name of the key pointing to the password in your Kubernetes secret
    existingSecretPasswordKey: clickhouse-password
    # -- Whether to use TLS connection connecting to ClickHouse
    secure: false
    # -- Whether to verify TLS connection connecting to ClickHouse
    verify: false
    # -- HTTP port of Clickhouse
    httpPort: 9999
    # -- TCP port of Clickhouse
    tcpPort: 9999

Thanks for all

Copy link

The issue is in the clickhouse.httpUrl variable. It is appending the port 8123 in the end by default

@lwjamir
Copy link

lwjamir commented Nov 15, 2023

For sure:

  ## External clickhouse configuration
  ## This is required when clickhouse.enabled is false
  ##
  externalClickhouse:
    # -- Host of the external cluster.
    host: hostname.domain
    # -- Name of the external cluster to run DDL queries on.
    cluster: external_cluster
    # -- Database name for the external cluster
    database: signoz_metrics
    # -- Clickhouse trace database (SigNoz Traces)
    traceDatabase: signoz_traces
    # -- User name for the external cluster to connect to the external cluster as
    user: "someUername"
    # -- Password for the cluster. Ignored if existingClickhouse.existingSecret is set
    password: "ignored"
    # -- Name of an existing Kubernetes secret object containing the password
    existingSecret: clickhouse-password
    # -- Name of the key pointing to the password in your Kubernetes secret
    existingSecretPasswordKey: clickhouse-password
    # -- Whether to use TLS connection connecting to ClickHouse
    secure: false
    # -- Whether to verify TLS connection connecting to ClickHouse
    verify: false
    # -- HTTP port of Clickhouse
    httpPort: 9999
    # -- TCP port of Clickhouse
    tcpPort: 9999

Thanks for all

try it like this:
tcpPort: "9999"

@mayur2281
Copy link

But what if i dont want a custom port?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants