Skip to content

Draft: Implement ErrorTracking using ClickHouse

Adam Hegyi requested to merge ah-experiment-with-ch-error-tracking into master

What does this MR do and why?

This MR contains the full implementation of the ErrorTracking feature using ClickHouse. Due to the MR's size, we plan to split it up at some point.

How to test it

Requirements:

  • Ensure that the ClickHouse database is installed and accessible.
  • Configure the config/click_house.yml file: mv config/click_house.example.yml config/click_house.yml

Example configuration:

default: &default
  username: default
  password: clickhouse
  url: http://127.0.0.1:8123
  timeout: 60
  open_timeout: 3

development:
  database: gitlab_clickhouse_development
  <<: *default
  1. Create the DB: rake click_house:create
  2. Setup the schema
    • curl https://gitlab.com/ahegyi/error-tracking-data-generator/-/raw/main/schema.sql | clickhouse-client -d gitlab_clickhouse_development -h 127.0.0.1 -mn --password
  3. Seed the CH database: SEED_CRM=true FILTER=error_tracking rake db:seed_fu
  4. Visit the printed out project route: Monitor / Error Tracking

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Adam Hegyi

Merge request reports