summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2020-05-21 00:08:06 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2020-05-21 00:08:06 +0000
commit5abd2b70c81fbba71ea51994b325ddebc54b53db (patch)
tree7e0453beaadd143127c7c4f97f24deaa1b04ba30 /lib
parent1902e256266822bc94e1a69debd79fb256de2d79 (diff)
downloadgitlab-ce-5abd2b70c81fbba71ea51994b325ddebc54b53db.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'lib')
-rw-r--r--lib/gitlab/git/rugged_impl/use_rugged.rb2
-rw-r--r--lib/gitlab/gitaly_client.rb12
-rw-r--r--lib/gitlab/instrumentation/redis.rb4
-rw-r--r--lib/gitlab/rugged_instrumentation.rb7
-rw-r--r--lib/gitlab/usage_data.rb2
-rw-r--r--lib/peek/views/gitaly.rb6
6 files changed, 17 insertions, 16 deletions
diff --git a/lib/gitlab/git/rugged_impl/use_rugged.rb b/lib/gitlab/git/rugged_impl/use_rugged.rb
index f9573bedba7..01ba458f3c7 100644
--- a/lib/gitlab/git/rugged_impl/use_rugged.rb
+++ b/lib/gitlab/git/rugged_impl/use_rugged.rb
@@ -25,7 +25,7 @@ module Gitlab
if Gitlab::RuggedInstrumentation.active?
Gitlab::RuggedInstrumentation.increment_query_count
- Gitlab::RuggedInstrumentation.query_time += duration
+ Gitlab::RuggedInstrumentation.add_query_time(duration)
Gitlab::RuggedInstrumentation.add_call_details(
feature: method_name,
diff --git a/lib/gitlab/gitaly_client.rb b/lib/gitlab/gitaly_client.rb
index 3aaed0edb87..bed99ef0ed4 100644
--- a/lib/gitlab/gitaly_client.rb
+++ b/lib/gitlab/gitaly_client.rb
@@ -201,7 +201,8 @@ module Gitlab
request_hash = request.is_a?(Google::Protobuf::MessageExts) ? request.to_h : {}
# Keep track, separately, for the performance bar
- self.query_time += duration
+ self.add_query_time(duration)
+
if Gitlab::PerformanceBar.enabled_for_request?
add_call_details(feature: "#{service}##{rpc}", duration: duration, request: request_hash, rpc: rpc,
backtrace: Gitlab::BacktraceCleaner.clean_backtrace(caller))
@@ -209,12 +210,15 @@ module Gitlab
end
def self.query_time
- query_time = SafeRequestStore[:gitaly_query_time] ||= 0
+ query_time = Gitlab::SafeRequestStore[:gitaly_query_time] || 0
query_time.round(Gitlab::InstrumentationHelper::DURATION_PRECISION)
end
- def self.query_time=(duration)
- SafeRequestStore[:gitaly_query_time] = duration
+ def self.add_query_time(duration)
+ return unless Gitlab::SafeRequestStore.active?
+
+ Gitlab::SafeRequestStore[:gitaly_query_time] ||= 0
+ Gitlab::SafeRequestStore[:gitaly_query_time] += duration
end
def self.current_transaction_labels
diff --git a/lib/gitlab/instrumentation/redis.rb b/lib/gitlab/instrumentation/redis.rb
index 902de55bc86..4bb5a68c68e 100644
--- a/lib/gitlab/instrumentation/redis.rb
+++ b/lib/gitlab/instrumentation/redis.rb
@@ -46,8 +46,8 @@ module Gitlab
end
def self.add_duration(duration)
- total_time = query_time + duration
- ::RequestStore[REDIS_CALL_DURATION] = total_time
+ ::RequestStore[REDIS_CALL_DURATION] ||= 0
+ ::RequestStore[REDIS_CALL_DURATION] += duration
end
def self.add_call_details(duration, args)
diff --git a/lib/gitlab/rugged_instrumentation.rb b/lib/gitlab/rugged_instrumentation.rb
index 9a5917ffba9..36a3a491de6 100644
--- a/lib/gitlab/rugged_instrumentation.rb
+++ b/lib/gitlab/rugged_instrumentation.rb
@@ -3,12 +3,13 @@
module Gitlab
module RuggedInstrumentation
def self.query_time
- query_time = SafeRequestStore[:rugged_query_time] ||= 0
+ query_time = SafeRequestStore[:rugged_query_time] || 0
query_time.round(Gitlab::InstrumentationHelper::DURATION_PRECISION)
end
- def self.query_time=(duration)
- SafeRequestStore[:rugged_query_time] = duration
+ def self.add_query_time(duration)
+ SafeRequestStore[:rugged_query_time] ||= 0
+ SafeRequestStore[:rugged_query_time] += duration
end
def self.query_time_ms
diff --git a/lib/gitlab/usage_data.rb b/lib/gitlab/usage_data.rb
index e60c786b52c..bb9d142d732 100644
--- a/lib/gitlab/usage_data.rb
+++ b/lib/gitlab/usage_data.rb
@@ -131,11 +131,13 @@ module Gitlab
projects_with_error_tracking_enabled: count(::ErrorTracking::ProjectErrorTrackingSetting.where(enabled: true)),
projects_with_alerts_service_enabled: count(AlertsService.active),
projects_with_prometheus_alerts: distinct_count(PrometheusAlert, :project_id),
+ projects_with_terraform_reports: distinct_count(::Ci::JobArtifact.terraform_reports, :project_id),
protected_branches: count(ProtectedBranch),
releases: count(Release),
remote_mirrors: count(RemoteMirror),
snippets: count(Snippet),
suggestions: count(Suggestion),
+ terraform_reports: count(::Ci::JobArtifact.terraform_reports),
todos: count(Todo),
uploads: count(Upload),
web_hooks: count(WebHook),
diff --git a/lib/peek/views/gitaly.rb b/lib/peek/views/gitaly.rb
index 7dc00b16cc0..566ca4496c4 100644
--- a/lib/peek/views/gitaly.rb
+++ b/lib/peek/views/gitaly.rb
@@ -40,12 +40,6 @@ module Peek
super.merge(request: pretty_request || {})
end
-
- def setup_subscribers
- subscribe 'start_processing.action_controller' do
- ::Gitlab::GitalyClient.query_time = 0
- end
- end
end
end
end