Merge branch '39958-updatemergerequestsworker-are-failing-on-metric-tagging' into 'master'
Revert "add metrics tagging to the sidekiq middleware" Closes #39958 See merge request gitlab-org/gitlab-ce!15285
This commit is contained in:
commit
43d98cd1ff
4 changed files with 31 additions and 29 deletions
|
@ -2,10 +2,6 @@ class UpdateMergeRequestsWorker
|
|||
include Sidekiq::Worker
|
||||
include DedicatedSidekiqQueue
|
||||
|
||||
def metrics_tags
|
||||
@metrics_tags || {}
|
||||
end
|
||||
|
||||
def perform(project_id, user_id, oldrev, newrev, ref)
|
||||
project = Project.find_by(id: project_id)
|
||||
return unless project
|
||||
|
@ -13,11 +9,6 @@ class UpdateMergeRequestsWorker
|
|||
user = User.find_by(id: user_id)
|
||||
return unless user
|
||||
|
||||
@metrics_tags = {
|
||||
project_id: project_id,
|
||||
user_id: user_id
|
||||
}
|
||||
|
||||
MergeRequests::RefreshService.new(project, user).execute(oldrev, newrev, ref)
|
||||
end
|
||||
end
|
||||
|
|
5
changelogs/unreleased/.yml
Normal file
5
changelogs/unreleased/.yml
Normal file
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Remove update merge request worker tagging.
|
||||
merge_request:
|
||||
author:
|
||||
type: removed
|
|
@ -11,8 +11,6 @@ module Gitlab
|
|||
# Old gitlad-shell messages don't provide enqueued_at/created_at attributes
|
||||
trans.set(:sidekiq_queue_duration, Time.now.to_f - (message['enqueued_at'] || message['created_at'] || 0))
|
||||
trans.run { yield }
|
||||
|
||||
worker.metrics_tags.each { |tag, value| trans.add_tag(tag, value) } if worker.respond_to?(:metrics_tags)
|
||||
rescue Exception => error # rubocop: disable Lint/RescueException
|
||||
trans.add_event(:sidekiq_exception)
|
||||
|
||||
|
|
|
@ -4,32 +4,40 @@ describe Gitlab::Metrics::SidekiqMiddleware do
|
|||
let(:middleware) { described_class.new }
|
||||
let(:message) { { 'args' => ['test'], 'enqueued_at' => Time.new(2016, 6, 23, 6, 59).to_f } }
|
||||
|
||||
def run(worker, message)
|
||||
expect(Gitlab::Metrics::BackgroundTransaction).to receive(:new)
|
||||
.with(worker.class)
|
||||
.and_call_original
|
||||
|
||||
expect_any_instance_of(Gitlab::Metrics::Transaction).to receive(:set)
|
||||
.with(:sidekiq_queue_duration, instance_of(Float))
|
||||
|
||||
expect_any_instance_of(Gitlab::Metrics::Transaction).to receive(:finish)
|
||||
|
||||
middleware.call(worker, message, :test) { nil }
|
||||
end
|
||||
|
||||
describe '#call' do
|
||||
let(:test_worker_class) { double(:class, name: 'TestWorker') }
|
||||
let(:worker) { double(:worker, class: test_worker_class) }
|
||||
|
||||
it 'tracks the transaction' do
|
||||
run(worker, message)
|
||||
worker = double(:worker, class: double(:class, name: 'TestWorker'))
|
||||
|
||||
expect(Gitlab::Metrics::BackgroundTransaction).to receive(:new)
|
||||
.with(worker.class)
|
||||
.and_call_original
|
||||
|
||||
expect_any_instance_of(Gitlab::Metrics::Transaction).to receive(:set)
|
||||
.with(:sidekiq_queue_duration, instance_of(Float))
|
||||
|
||||
expect_any_instance_of(Gitlab::Metrics::Transaction).to receive(:finish)
|
||||
|
||||
middleware.call(worker, message, :test) { nil }
|
||||
end
|
||||
|
||||
it 'tracks the transaction (for messages without `enqueued_at`)' do
|
||||
run(worker, {})
|
||||
worker = double(:worker, class: double(:class, name: 'TestWorker'))
|
||||
|
||||
expect(Gitlab::Metrics::BackgroundTransaction).to receive(:new)
|
||||
.with(worker.class)
|
||||
.and_call_original
|
||||
|
||||
expect_any_instance_of(Gitlab::Metrics::Transaction).to receive(:set)
|
||||
.with(:sidekiq_queue_duration, instance_of(Float))
|
||||
|
||||
expect_any_instance_of(Gitlab::Metrics::Transaction).to receive(:finish)
|
||||
|
||||
middleware.call(worker, {}, :test) { nil }
|
||||
end
|
||||
|
||||
it 'tracks any raised exceptions' do
|
||||
worker = double(:worker, class: double(:class, name: 'TestWorker'))
|
||||
|
||||
expect_any_instance_of(Gitlab::Metrics::Transaction)
|
||||
.to receive(:run).and_raise(RuntimeError)
|
||||
|
||||
|
|
Loading…
Reference in a new issue