Commit 142a8678 authored by Kamil Trzciński's avatar Kamil Trzciński

Merge branch 'puma-fix' into 'master'

Ignore Puma empty worker stats

See merge request gitlab-org/gitlab-ce!28932
parents 5915dec6 d4a83ce5
...@@ -51,10 +51,11 @@ module Gitlab ...@@ -51,10 +51,11 @@ module Gitlab
set_master_metrics(stats) set_master_metrics(stats)
stats['worker_status'].each do |worker| stats['worker_status'].each do |worker|
last_status = worker['last_status']
labels = { worker: "worker_#{worker['index']}" } labels = { worker: "worker_#{worker['index']}" }
metrics[:puma_phase].set(labels, worker['phase']) metrics[:puma_phase].set(labels, worker['phase'])
set_worker_metrics(worker['last_status'], labels) set_worker_metrics(last_status, labels) if last_status.present?
end end
end end
......
...@@ -61,6 +61,33 @@ describe Gitlab::Metrics::Samplers::PumaSampler do ...@@ -61,6 +61,33 @@ describe Gitlab::Metrics::Samplers::PumaSampler do
end end
end end
context 'with empty worker stats' do
let(:puma_stats) do
<<~EOS
{
"workers": 2,
"phase": 2,
"booted_workers": 2,
"old_workers": 0,
"worker_status": [{
"pid": 32534,
"index": 0,
"phase": 1,
"booted": true,
"last_checkin": "2019-05-15T07:57:55Z",
"last_status": {}
}]
}
EOS
end
it 'does not log worker stats' do
expect(subject).not_to receive(:set_worker_metrics)
subject.sample
end
end
context 'in single mode' do context 'in single mode' do
let(:puma_stats) do let(:puma_stats) do
<<~EOS <<~EOS
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment