Optimize services_usage counters
On gitlab.com we get -1
s due to group by and non-batch counting .
def services_usage
service_counts = count(Service.active.where(template: false).where.not(type: 'JiraService').group(:type), fallback: Hash.new(-1), batch: false)
results = Service.available_services_names.each_with_object({}) do |service_name, response|
response["projects_#{service_name}_active".to_sym] = service_counts["#{service_name}_service".camelize] || 0
end
# Keep old Slack keys for backward compatibility, https://gitlab.com/gitlab-data/analytics/issues/3241
results[:projects_slack_notifications_active] = results[:projects_slack_active]
results[:projects_slack_slash_active] = results[:projects_slack_slash_commands_active]
results.merge(jira_usage)
end
90: "projects_alerts_active": -1,
91: "projects_asana_active": -1,
92: "projects_assembla_active": -1,
93: "projects_bamboo_active": -1,
94: "projects_bugzilla_active": -1,
95: "projects_buildkite_active": -1,
96: "projects_campfire_active": -1,
97: "projects_custom_issue_tracker_active": -1,
98: "projects_discord_active": -1,
99: "projects_drone_ci_active": -1,
100: "projects_emails_on_push_active": -1,
101: "projects_external_wiki_active": -1,
102: "projects_flowdock_active": -1,
103: "projects_github_active": -1,
104: "projects_gitlab_slack_application_active": -1,
105: "projects_hangouts_chat_active": -1,
106: "projects_hipchat_active": -1,
107: "projects_irker_active": -1,
108: "projects_jenkins_active": -1,
109: "projects_jenkins_deprecated_active": -1,
111: "projects_mattermost_active": -1,
112: "projects_mattermost_slash_commands_active": -1,
113: "projects_microsoft_teams_active": -1,
114: "projects_packagist_active": -1,
115: "projects_pipelines_email_active": -1,
116: "projects_pivotaltracker_active": -1,
117: "projects_prometheus_active": -1,
118: "projects_pushover_active": -1,
119: "projects_redmine_active": -1,
120: "projects_slack_active": -1,
121: "projects_slack_slash_commands_active": -1,
122: "projects_teamcity_active": -1,
123: "projects_unify_circuit_active": -1,
124: "projects_youtrack_active": -1,
125: "projects_slack_notifications_active": -1,
126: "projects_slack_slash_active": -1,
Edited by Alper Akgun