2021-09-30 23:02:18 +05:30
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
RSpec.shared_context 'stubbed service ping metrics definitions' do
|
|
|
|
include UsageDataHelpers
|
|
|
|
|
|
|
|
let(:metrics_definitions) { standard_metrics + subscription_metrics + operational_metrics + optional_metrics }
|
|
|
|
let(:standard_metrics) do
|
|
|
|
[
|
2021-11-11 11:23:49 +05:30
|
|
|
metric_attributes('uuid', 'standard'),
|
|
|
|
metric_attributes('recorded_at', 'standard'),
|
|
|
|
metric_attributes('settings.collected_data_categories', 'standard', 'object')
|
2021-09-30 23:02:18 +05:30
|
|
|
]
|
|
|
|
end
|
|
|
|
|
|
|
|
let(:operational_metrics) do
|
|
|
|
[
|
2021-11-11 11:23:49 +05:30
|
|
|
metric_attributes('counts.merge_requests', 'operational'),
|
2021-10-27 15:23:28 +05:30
|
|
|
metric_attributes('counts.todos', "operational")
|
2021-09-30 23:02:18 +05:30
|
|
|
]
|
|
|
|
end
|
|
|
|
|
|
|
|
let(:optional_metrics) do
|
|
|
|
[
|
2021-11-11 11:23:49 +05:30
|
|
|
metric_attributes('counts.boards', 'optional', 'number'),
|
|
|
|
metric_attributes('gitaly.filesystems', '').except('data_category'),
|
|
|
|
metric_attributes('usage_activity_by_stage.monitor.projects_with_enabled_alert_integrations_histogram', 'optional', 'object'),
|
|
|
|
metric_attributes('topology', 'optional', 'object')
|
2021-09-30 23:02:18 +05:30
|
|
|
]
|
|
|
|
end
|
|
|
|
|
|
|
|
before do
|
|
|
|
stub_usage_data_connections
|
|
|
|
stub_object_store_settings
|
|
|
|
|
|
|
|
allow(Gitlab::Usage::MetricDefinition).to(
|
|
|
|
receive(:definitions)
|
|
|
|
.and_return(metrics_definitions.to_h { |definition| [definition['key_path'], Gitlab::Usage::MetricDefinition.new('', definition.symbolize_keys)] })
|
|
|
|
)
|
|
|
|
end
|
|
|
|
|
2021-11-11 11:23:49 +05:30
|
|
|
def metric_attributes(key_path, category, value_type = 'string')
|
2021-09-30 23:02:18 +05:30
|
|
|
{
|
|
|
|
'key_path' => key_path,
|
2021-11-11 11:23:49 +05:30
|
|
|
'data_category' => category,
|
|
|
|
'value_type' => value_type
|
2021-09-30 23:02:18 +05:30
|
|
|
}
|
|
|
|
end
|
|
|
|
end
|