diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-09-14 15:09:28 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-09-14 15:09:28 +0000 |
commit | 307f6d8439ab4bcc33be5c34e63da004b8968634 (patch) | |
tree | 2d3f4cb2c2a784b17db245e6c98c11ff7f787700 /lib | |
parent | 9a5dcad39c5dd81384ae4ec2398435883b944363 (diff) | |
download | gitlab-ce-307f6d8439ab4bcc33be5c34e63da004b8968634.tar.gz |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'lib')
4 files changed, 40 insertions, 4 deletions
diff --git a/lib/gitlab/analytics/instance_statistics/workers_argument_builder.rb b/lib/gitlab/analytics/instance_statistics/workers_argument_builder.rb new file mode 100644 index 00000000000..636bba22c23 --- /dev/null +++ b/lib/gitlab/analytics/instance_statistics/workers_argument_builder.rb @@ -0,0 +1,32 @@ +# frozen_string_literal: true + +module Gitlab + module Analytics + module InstanceStatistics + class WorkersArgumentBuilder + def initialize(measurement_identifiers: [], recorded_at: Time.zone.now) + @measurement_identifiers = measurement_identifiers + @recorded_at = recorded_at + end + + def execute + measurement_identifiers.map do |measurement_identifier| + query_scope = ::Analytics::InstanceStatistics::Measurement::IDENTIFIER_QUERY_MAPPING[measurement_identifier]&.call + + next if query_scope.nil? + + # Determining the query range (id range) as early as possible in order to get more accurate counts. + start = query_scope.minimum(:id) + finish = query_scope.maximum(:id) + + [measurement_identifier, start, finish, recorded_at] + end.compact + end + + private + + attr_reader :measurement_identifiers, :recorded_at + end + end + end +end diff --git a/lib/gitlab/database_importers/instance_administrators/create_group.rb b/lib/gitlab/database_importers/instance_administrators/create_group.rb index 5bf0e5a320d..d9425810405 100644 --- a/lib/gitlab/database_importers/instance_administrators/create_group.rb +++ b/lib/gitlab/database_importers/instance_administrators/create_group.rb @@ -6,6 +6,8 @@ module Gitlab class CreateGroup < ::BaseService include Stepable + NAME = 'GitLab Instance' + PATH_PREFIX = 'gitlab-instance' VISIBILITY_LEVEL = Gitlab::VisibilityLevel::INTERNAL steps :validate_application_settings, @@ -117,12 +119,12 @@ module Gitlab def create_group_params { - name: 'GitLab Instance Administrators', + name: NAME, visibility_level: VISIBILITY_LEVEL, # The 8 random characters at the end are so that the path does not # clash with any existing group that the user might have created. - path: "gitlab-instance-administrators-#{SecureRandom.hex(4)}" + path: "#{PATH_PREFIX}-#{SecureRandom.hex(4)}" } end end diff --git a/lib/gitlab/database_importers/self_monitoring/project/create_service.rb b/lib/gitlab/database_importers/self_monitoring/project/create_service.rb index 07a4c3bf5e6..88f035c2d1b 100644 --- a/lib/gitlab/database_importers/self_monitoring/project/create_service.rb +++ b/lib/gitlab/database_importers/self_monitoring/project/create_service.rb @@ -9,7 +9,7 @@ module Gitlab include SelfMonitoring::Helpers VISIBILITY_LEVEL = Gitlab::VisibilityLevel::INTERNAL - PROJECT_NAME = 'GitLab self monitoring' + PROJECT_NAME = 'Monitoring' steps :validate_application_settings, :create_group, diff --git a/lib/gitlab/error_tracking/processor/grpc_error_processor.rb b/lib/gitlab/error_tracking/processor/grpc_error_processor.rb index a91ab17887d..871e9c4b7c8 100644 --- a/lib/gitlab/error_tracking/processor/grpc_error_processor.rb +++ b/lib/gitlab/error_tracking/processor/grpc_error_processor.rb @@ -24,9 +24,11 @@ module Gitlab return unless entry.is_a?(Hash) + exception_type = entry[:type] raw_message = entry[:value] - return unless raw_message.start_with?('GRPC::') + return unless exception_type&.start_with?('GRPC::') + return unless raw_message.present? message, debug_str = split_debug_error_string(raw_message) |