Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2019-11-04 21:06:28 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2019-11-04 21:06:28 +0300
commit7b25b12016eeca73262cf2a618b411fb911295e1 (patch)
tree9198dc42c9f1151184f276d11d90c5193544eb1c /lib/gitlab/sidekiq_middleware
parentaa542224bb345acf0cb9a1a606f0a802c16b0336 (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'lib/gitlab/sidekiq_middleware')
-rw-r--r--lib/gitlab/sidekiq_middleware/metrics.rb22
1 files changed, 16 insertions, 6 deletions
diff --git a/lib/gitlab/sidekiq_middleware/metrics.rb b/lib/gitlab/sidekiq_middleware/metrics.rb
index bd819843bd4..64e77a2d828 100644
--- a/lib/gitlab/sidekiq_middleware/metrics.rb
+++ b/lib/gitlab/sidekiq_middleware/metrics.rb
@@ -13,8 +13,8 @@ module Gitlab
@metrics[:sidekiq_concurrency].set({}, Sidekiq.options[:concurrency].to_i)
end
- def call(_worker, job, queue)
- labels = create_labels(queue)
+ def call(worker, job, queue)
+ labels = create_labels(worker, queue)
queue_duration = ::Gitlab::InstrumentationHelper.queue_duration_for_job(job)
@metrics[:sidekiq_jobs_queue_duration_seconds].observe(labels, queue_duration) if queue_duration
@@ -62,10 +62,20 @@ module Gitlab
}
end
- def create_labels(queue)
- {
- queue: queue
- }
+ def create_labels(worker, queue)
+ labels = { queue: queue }
+ return labels unless worker.include? WorkerAttributes
+
+ labels[:latency_sensitive] = true if worker.latency_sensitive_worker?
+ labels[:external_deps] = true if worker.worker_has_external_dependencies?
+
+ feature_category = worker.get_feature_category
+ labels[:feat_cat] = feature_category if feature_category
+
+ resource_boundary = worker.get_worker_resource_boundary
+ labels[:boundary] = resource_boundary if resource_boundary && resource_boundary != :unknown
+
+ labels
end
def get_thread_cputime