Skip to content

Technical Breakdown for Monitor: Self-Monitoring Removal

This is the technical breakdown for Monitor:Self-Monitoring Deprecation (gitlab-org/gitlab#348909 - closed).

Removal breakdown

List of features which should not be available

Dependencies, impact & blockers

Note: We should start with frontend removals and then start the backend as it will remove the dependency on backend.

The feature is pretty much isolated. We remove the entry point for the feature via the UI and the workers used to create/delete the project. We do not need a feature flag to block the feature first. We can start code and usage deletions as mentioned below.

Relevant files

backend

Relevant files
Deletions
  • app/workers/self_monitoring_project_create_worker.rb
  • app/workers/self_monitoring_project_delete_worker.rb
  • app/workers/concerns/self_monitoring_project_worker.rb
  • app/services/metrics/dashboard/self_monitoring_dashboard_service.rb
  • spec/requests/self_monitoring_project_spec.rb
  • spec/support/shared_examples/requests/self_monitoring_shared_examples.rb
  • spec/support/shared_examples/workers/self_monitoring_shared_examples.rb
  • spec/lib/gitlab/database_importers/self_monitoring/project/*
  • lib/gitlab/database_importers/self_monitoring/*
  • config/prometheus/self_monitoring_default.yml
  • spec/workers/self_monitoring_project_delete_worker_spec.rb
  • spec/workers/self_monitoring_project_create_worker_spec.rb
  • spec/services/metrics/dashboard/self_monitoring_dashboard_service_spec.rb
  • db/fixtures/production/998_gitlab_instance_administration_project.rb
Usages to be removed
  • app/controllers/admin/application_settings_controller.rb
  • app/workers/all_queues.yml
  • app/services/metrics/dashboard/clone_dashboard_service.rb
  • lib/gitlab/metrics/dashboard/finder.rb
  • lib/gitlab/metrics/dashboard/service_selector.rb
  • spec/lib/gitlab/metrics/dashboard/service_selector_spec.rb
  • spec/services/metrics/dashboard/clone_dashboard_service_spec.rb
  • spec/support/helpers/metrics_dashboard_helpers.rb
  • [TBD]

frontend

Relevant files
Deletions
  • app/assets/javascripts/self_monitor/components/self_monitor_form.vue
  • app/assets/javascripts/self_monitor/index.js
  • spec/frontend/self_monitor/components/self_monitor_form_spec.js
  • app/assets/javascripts/self_monitor/store/*
  • spec/frontend/self_monitor/components/__snapshots__/self_monitor_form_spec.js.snap
  • spec/frontend/self_monitor/store/*
Usages to be removed
  • app/views/admin/application_settings/metrics_and_profiling.html.haml

documentation

Relevant files
  • doc/administration/monitoring/gitlab_self_monitoring_project/*

Issue breakdown & timeline

Issue Notes Milestone
Update documentation related to self-monitoring... (gitlab-org/gitlab#394998 - closed) documentation updates %16.0
Remove self_monitor_form.vue component and rela... (gitlab-org/gitlab#394992 - closed) frontend SM removals %16.0
Remove usages of self-monitoring related code i... (gitlab-org/gitlab#394991 - closed) backend SM usages %16.0
Delete self monitoring project related services... (gitlab-org/gitlab#394989 - closed) backend SM services %16.0
Delete database importers for self-monitoring p... (gitlab-org/gitlab#394987 - closed) database removals %16.0
Delete self monitoring project workers and thei... (gitlab-org/gitlab#394986 - closed) backend SM workers %16.0

Definition of done

The following are recommended prior to starting removal:

  • Detailed breakdown issue was posted to #g_respond with request for feedback
  • All needed issues are created & linked to the appropriate epic
  • All open threads are resolved or determined non-blocking
Edited by Rajendra Kadam