diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2022-02-08 15:12:33 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2022-02-08 15:12:33 +0000 |
commit | 6225d57e55eaa0205e939e7ed6577636b0ee47cf (patch) | |
tree | be54b280f0631a1e9c8e767c675e610c65925b2e /lib | |
parent | dcc096f21918399d7061372c0a22b9a5408a00a5 (diff) | |
download | gitlab-ce-6225d57e55eaa0205e939e7ed6577636b0ee47cf.tar.gz |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'lib')
-rw-r--r-- | lib/api/helpers.rb | 2 | ||||
-rw-r--r-- | lib/api/usage_data_non_sql_metrics.rb | 2 | ||||
-rw-r--r-- | lib/api/usage_data_queries.rb | 2 | ||||
-rw-r--r-- | lib/gitlab/http.rb | 2 | ||||
-rw-r--r-- | lib/gitlab/usage/service_ping_report.rb | 22 | ||||
-rw-r--r-- | lib/gitlab/utils.rb | 7 | ||||
-rw-r--r-- | lib/tasks/gitlab/usage_data.rake | 6 |
7 files changed, 32 insertions, 11 deletions
diff --git a/lib/api/helpers.rb b/lib/api/helpers.rb index 44ed19b561d..184fe7868a5 100644 --- a/lib/api/helpers.rb +++ b/lib/api/helpers.rb @@ -117,6 +117,8 @@ module API # rubocop: disable CodeReuse/ActiveRecord def find_project(id) + return unless id + projects = Project.without_deleted if id.is_a?(Integer) || id =~ /^\d+$/ diff --git a/lib/api/usage_data_non_sql_metrics.rb b/lib/api/usage_data_non_sql_metrics.rb index df1144ee7d3..983038e0263 100644 --- a/lib/api/usage_data_non_sql_metrics.rb +++ b/lib/api/usage_data_non_sql_metrics.rb @@ -18,7 +18,7 @@ module API get 'non_sql_metrics' do Gitlab::QueryLimiting.disable!('https://gitlab.com/gitlab-org/gitlab/-/issues/325534') - data = Gitlab::UsageDataNonSqlMetrics.data + data = Gitlab::Usage::ServicePingReport.for(output: :non_sql_metrics_values) present data end diff --git a/lib/api/usage_data_queries.rb b/lib/api/usage_data_queries.rb index c252c3a27c8..3432e71eb28 100644 --- a/lib/api/usage_data_queries.rb +++ b/lib/api/usage_data_queries.rb @@ -18,7 +18,7 @@ module API get 'queries' do Gitlab::QueryLimiting.disable!('https://gitlab.com/gitlab-org/gitlab/-/issues/325534') - queries = Gitlab::UsageDataQueries.data + queries = Gitlab::Usage::ServicePingReport.for(output: :metrics_queries) present queries end diff --git a/lib/gitlab/http.rb b/lib/gitlab/http.rb index b52c87e2259..7bb16e071b0 100644 --- a/lib/gitlab/http.rb +++ b/lib/gitlab/http.rb @@ -25,7 +25,7 @@ module Gitlab read_timeout: 20, write_timeout: 30 }.freeze - DEFAULT_READ_TOTAL_TIMEOUT = 20.seconds + DEFAULT_READ_TOTAL_TIMEOUT = 30.seconds include HTTParty # rubocop:disable Gitlab/HTTParty diff --git a/lib/gitlab/usage/service_ping_report.rb b/lib/gitlab/usage/service_ping_report.rb index 6cc1ee90559..d9e30c46498 100644 --- a/lib/gitlab/usage/service_ping_report.rb +++ b/lib/gitlab/usage/service_ping_report.rb @@ -4,20 +4,32 @@ module Gitlab module Usage class ServicePingReport class << self - def for(mode:, cached: false) - case mode.to_sym - when :values - usage_data(cached) + def for(output:, cached: false) + case output.to_sym + when :all_metrics_values + all_metrics_values(cached) + when :metrics_queries + metrics_queries + when :non_sql_metrics_values + non_sql_metrics_values end end private - def usage_data(cached) + def all_metrics_values(cached) Rails.cache.fetch('usage_data', force: !cached, expires_in: 2.weeks) do Gitlab::UsageData.data end end + + def metrics_queries + Gitlab::UsageDataQueries.data + end + + def non_sql_metrics_values + Gitlab::UsageDataNonSqlMetrics.data + end end end end diff --git a/lib/gitlab/utils.rb b/lib/gitlab/utils.rb index 96cff024371..608545baf74 100644 --- a/lib/gitlab/utils.rb +++ b/lib/gitlab/utils.rb @@ -203,6 +203,13 @@ module Gitlab rescue Addressable::URI::InvalidURIError, TypeError end + def add_url_parameters(url, params) + uri = parse_url(url.to_s) + uri.query_values = uri.query_values.to_h.merge(params.to_h.stringify_keys) + uri.query_values = nil if uri.query_values.empty? + uri.to_s + end + def removes_sensitive_data_from_url(uri_string) uri = parse_url(uri_string) diff --git a/lib/tasks/gitlab/usage_data.rake b/lib/tasks/gitlab/usage_data.rake index 597773c3928..9f064ef4c0c 100644 --- a/lib/tasks/gitlab/usage_data.rake +++ b/lib/tasks/gitlab/usage_data.rake @@ -4,17 +4,17 @@ namespace :gitlab do namespace :usage_data do desc 'GitLab | UsageData | Generate raw SQLs for usage ping in YAML' task dump_sql_in_yaml: :environment do - puts Gitlab::UsageDataQueries.data.to_yaml + puts Gitlab::Usage::ServicePingReport.for(output: :metrics_queries).to_yaml end desc 'GitLab | UsageData | Generate raw SQLs for usage ping in JSON' task dump_sql_in_json: :environment do - puts Gitlab::Json.pretty_generate(Gitlab::UsageDataQueries.data) + puts Gitlab::Json.pretty_generate(Gitlab::Usage::ServicePingReport.for(output: :metrics_queries)) end desc 'GitLab | UsageData | Generate usage ping in JSON' task generate: :environment do - puts Gitlab::Json.pretty_generate(Gitlab::Usage::ServicePingReport.for(mode: :values)) + puts Gitlab::Json.pretty_generate(Gitlab::Usage::ServicePingReport.for(output: :all_metrics_values)) end desc 'GitLab | UsageData | Generate usage ping and send it to Versions Application' |