Upgrade to v0.38 from earlier versions

In the previous version of SigNoz v0.36 i.e. SigNoz chart version v0.32.0, we have added support for dot(.) in attribute names.

This migration updates the dashboards and alerts to support the new format.

If you are using SigNoz version prior to v0.36 please make sure that migration v0.36 is successful before running this.

Steps to run migration script:

First upgrade to v0.38

Follow the platform specific instructions to upgrade to 0.38 and above.

For Docker

Change the directory to SigNoz repo and run following commands:

cd deploy/docker/clickhouse-setup
docker run --name signoz-migrate-sqlite --network clickhouse-setup_default -it \
  -v $PWD/data/signoz/:/var/lib/signoz/ signoz/migrate:0.38 \
  --data_source=/var/lib/signoz/signoz.db \
  --host=clickhouse \
  --port=9000

Steps to check logs:

docker logs -f signoz-migrate-sqlite

In case of failure and have to run again, make sure to cleanup the container before running the migration script again.

docker stop signoz-migrate-sqlite

docker rm signoz-migrate-sqlite

For Kubernetes

The steps for running the migration on kubernetes are :-

  1. Make sure you have latest chart information from the Helm repositories:

    helm repo update
    
  2. Include the following in deployment-override.yaml file:

    queryService:
      initContainers:
        migration:
          enabled: true
          image:
            registry: docker.io
            repository: signoz/migrate
            tag: 0.38
            pullPolicy: IfNotPresent
          args:
            - "--data_source=/var/lib/signoz/signoz.db"
            - "--host=$(CLICKHOUSE_HOST)"
            - "--user=$(CLICKHOUSE_USER)"
            - "--password=$(CLICKHOUSE_PASSWORD)"
            - "--port=$(CLICKHOUSE_PORT)"
    

If you are using external ClickHouse replace the value of host and port along with the respective value of user and password

  1. Run the following command to upgrade the chart:
    helm --namespace platform upgrade my-release signoz/signoz -f deployment-override.yaml
    
  2. Check the logs of the migration container using:
    kubectl logs my-release-signoz-query-service-0 -n platform -c my-release-signoz-query-service-migration
    
  3. Remove the init container added in step 1 if there are no errors in the step 4 and upgrade:
    helm --namespace platform upgrade my-release signoz/signoz -f deployment-override.yaml
    

In case of Upgrade Failure

Reach out to us at Slack.

Command-Line Interface (CLI) Flags

There are some custom flags which can be enabled based on different use-cases. All the flags below are optional.

Flags:

  • --port : Specify port of clickhouse. default=9000
  • --host : Specify host of clickhouse. default=127.0.0.1
  • --user : Specify user name of clickhouse. default=default
  • --password : Specify password of clickhouse. default=""
  • --data_source: Data Source path of sqlite db. default="db"

Was this page helpful?