Add service-health-dashboards for service-maturity
This MR adds service-health-dashboards information into service health dashboards
of the service maturity model in level 3. As outline in
gitlab-com/gl-infra/scalability#830 (closed), the evidence is a list of dashboard URLs.
Running with -D
flag will simply print to terminal.
export GRAFANA_API_TOKEN=<get token from password vault>
./dashboards/collate-service-dashboards.sh -D # for dry run
Updated criteria for sidekiq (as an example). Download artifact to view in detail or run ./scripts/compile_jsonnet.rb ./service-maturity/maturity.jsonnet > service_maturity.yml
locally.
Click to expand
{
"criteria": [
{
"evidence": [
"https://dashboards.gitlab.net/d/sidekiq-app/sidekiq-application-info",
"https://dashboards.gitlab.net/d/sidekiq-bitbucket-importer/sidekiq-bitbucket-importer",
"https://dashboards.gitlab.net/d/sidekiq-bitbucket-server-importer/sidekiq-bitbucket-server-importer",
"https://dashboards.gitlab.net/d/sidekiq-loose-foreign-keys/sidekiq-loose-foreign-keys-processing",
"https://dashboards.gitlab.net/d/sidekiq-main/sidekiq-overview",
"https://dashboards.gitlab.net/d/sidekiq-pod/sidekiq-pod-info",
"https://dashboards.gitlab.net/d/sidekiq-queue-detail/sidekiq-queue-detail",
"https://dashboards.gitlab.net/d/sidekiq-shard-detail/sidekiq-shard-detail",
"https://dashboards.gitlab.net/d/sidekiq-worker-detail/sidekiq-worker-detail"
],
"name": "Service health dashboards",
"result": "passed"
},
{
"evidence": null,
"name": "SLA calculations driven from SLO metrics",
"result": "unimplemented"
},
{
"evidence": "https://dashboards.gitlab.net/d/general-service/general-service-platform-metrics?var-type=sidekiq",
"name": "Apdex built from multiple sources",
"result": "passed"
},
{
"evidence": null,
"name": "Logging includes metadata for measuring scalability",
"result": "unimplemented"
},
{
"evidence": null,
"name": "Developer guides exist in developer documentation",
"result": "unimplemented"
},
{
"evidence": "https://gitlab.com/gitlab-com/runbooks/-/tree/master/docs/sidekiq",
"name": "SRE guides exist in runbooks",
"result": "passed"
},
{
"evidence": null,
"name": "Metrics on downstream service usage",
"result": "unimplemented"
}
],
"name": "Level 3",
"number": 3,
"passed": true
}
Click to show rendered JSON
{
"camoproxy": [
"https://dashboards.gitlab.net/d/camoproxy-main/camoproxy-overview"
],
"redis-cache": [
"https://dashboards.gitlab.net/d/redis-cache-main/redis-cache-overview"
],
"plantuml": [
"https://dashboards.gitlab.net/d/plantuml-main/plantuml-overview"
],
"gitaly": [
"https://dashboards.gitlab.net/d/gitaly-rebalancing/gitaly-rebalance-dashboard",
"https://dashboards.gitlab.net/d/gitaly-host-detail/gitaly-host-detail",
"https://dashboards.gitlab.net/d/gitaly-main/gitaly-overview"
],
"product-intelligence": [
"https://dashboards.gitlab.net/d/product-intelligence-main/product-intelligence-product-intelligence"
],
"frontend": [
"https://dashboards.gitlab.net/d/frontend-git-haproxy/frontend-ci-gateway-git-utilisation-based-on-haproxy",
"https://dashboards.gitlab.net/d/frontend-main/frontend-overview"
],
"sidekiq": [
"https://dashboards.gitlab.net/d/sidekiq-app/sidekiq-application-info",
"https://dashboards.gitlab.net/d/sidekiq-bitbucket-importer/sidekiq-bitbucket-importer",
"https://dashboards.gitlab.net/d/sidekiq-worker-detail/sidekiq-worker-detail",
"https://dashboards.gitlab.net/d/sidekiq-shard-detail/sidekiq-shard-detail",
"https://dashboards.gitlab.net/d/sidekiq-bitbucket-server-importer/sidekiq-bitbucket-server-importer",
"https://dashboards.gitlab.net/d/sidekiq-queue-detail/sidekiq-queue-detail",
"https://dashboards.gitlab.net/d/sidekiq-pod/sidekiq-pod-info",
"https://dashboards.gitlab.net/d/sidekiq-loose-foreign-keys/sidekiq-loose-foreign-keys-processing",
"https://dashboards.gitlab.net/d/sidekiq-main/sidekiq-overview"
],
"patroni-ci": [
"https://dashboards.gitlab.net/d/patroni-ci-main/patroni-ci-overview"
],
"importers": [
"https://dashboards.gitlab.net/d/importers-github-importer/importers-github-importer"
],
"web-pages": [
"https://dashboards.gitlab.net/d/web-pages-haproxy-rejections/web-pages-haproxy-rejections-due-to-rate-limiting-and-blocks",
"https://dashboards.gitlab.net/d/web-pages-pod/web-pages-pod-info",
"https://dashboards.gitlab.net/d/web-pages-main/web-pages-overview"
],
"redis": [
"https://dashboards.gitlab.net/d/redis-main/redis-overview"
],
"general": [
"https://dashboards.gitlab.net/d/general-error-budgets/general-feature-category-detail-error-budgets",
"https://dashboards.gitlab.net/d/general-incident-budget-explorer/general-incident-budget-explorer",
"https://dashboards.gitlab.net/d/general-application-demand/general-application-demand-indicators",
"https://dashboards.gitlab.net/d/general-mtbf/general-mean-time-between-failure",
"https://dashboards.gitlab.net/d/general-fs/general-filesystems",
"https://dashboards.gitlab.net/d/general-service/general-service-platform-metrics",
"https://dashboards.gitlab.net/d/general-slas/general-slas",
"https://dashboards.gitlab.net/d/general-request-apdex-sli-adoption/general-request-apdex-participation",
"https://dashboards.gitlab.net/d/general-pagespeed/general-pagespeed",
"https://dashboards.gitlab.net/d/general-kubernetes_version/general-kubernetes-version-matrix",
"https://dashboards.gitlab.net/d/general-public-splashscreen/general-gitlab-dashboards",
"https://dashboards.gitlab.net/d/general-egress_ingress/general-network-ingress-egress-overview",
"https://dashboards.gitlab.net/d/general-triage/general-platform-triage"
],
"jaeger": [
"https://dashboards.gitlab.net/d/jaeger-main/jaeger-overview"
],
"web": [
"https://dashboards.gitlab.net/d/web-rails-controller/web-rails-controller",
"https://dashboards.gitlab.net/d/web-pod/web-pod-info",
"https://dashboards.gitlab.net/d/web-main/web-overview"
],
"stage-groups": [
"https://dashboards.gitlab.net/d/stage-groups-composition_analysis/stage-groups-composition-analysis-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-acquisition/stage-groups-acquisition-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-product_intelligence/stage-groups-product-intelligence-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-pubsec_services/stage-groups-us-public-sector-services-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-billing_and_subscription_ma/stage-groups-billing-and-subscription-management-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-threat_insights/stage-groups-threat-insights-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-utilization/stage-groups-utilization-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-pods/stage-groups-pods-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-product_analytics/stage-groups-product-analytics-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-workspace/stage-groups-workspace-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-dedicated/stage-groups-gitlab-dedicated-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-compliance/stage-groups-compliance-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-vulnerability_research/stage-groups-vulnerability-research-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-respond/stage-groups-respond-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-pipeline_authoring/stage-groups-pipeline-authoring-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-observability/stage-groups-observability-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-editor/stage-groups-editor-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-optimize/stage-groups-optimize-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-pipeline_execution/stage-groups-pipeline-execution-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-release/stage-groups-release-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-certify/stage-groups-certify-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-gitaly/stage-groups-gitaly-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-foundations/stage-groups-foundations-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-runner/stage-groups-runner-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-security_policies/stage-groups-security-policies-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-dynamic_analysis/stage-groups-dynamic-analysis-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-source_code/stage-groups-source-code-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-code_review/stage-groups-code-review-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-import/stage-groups-import-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-static_analysis/stage-groups-static-analysis-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-fulfillment_platform/stage-groups-fulfillment-platform-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-geo/stage-groups-geo-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-project_management/stage-groups-project-management-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-authentication_and_authoriz/stage-groups-authentication-and-authorization-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-purchase/stage-groups-purchase-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-pipeline_insights/stage-groups-pipeline-insights-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-global_search/stage-groups-global-search-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-integrations/stage-groups-integrations-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-configure/stage-groups-configure-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-product_planning/stage-groups-product-planning-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-package/stage-groups-package-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-activation/stage-groups-activation-group-dashboard",
"https://dashboards.gitlab.net/d/stage-groups-provision/stage-groups-provision-group-dashboard"
],
"external-dns": [
"https://dashboards.gitlab.net/d/external-dns-main/external-dns-overview"
],
"mailroom": [
"https://dashboards.gitlab.net/d/mailroom-pod/mailroom-pod-info",
"https://dashboards.gitlab.net/d/mailroom-main/mailroom-overview"
],
"nat": [
"https://dashboards.gitlab.net/d/nat-detail/nat-cloud-nat-detail",
"https://dashboards.gitlab.net/d/nat-main/nat-overview"
],
"pvs": [
"https://dashboards.gitlab.net/d/pvs-main/pvs-overview"
],
"patroni": [
"https://dashboards.gitlab.net/d/patroni-main/patroni-overview",
"https://dashboards.gitlab.net/d/patroni-marginalia-sampler/patroni-marginalia-sampler"
],
"diagrams": [
"https://dashboards.gitlab.net/d/diagrams-main/diagrams-overview-diagrams"
],
"websockets": [
"https://dashboards.gitlab.net/d/websockets-pod/websockets-pod-info",
"https://dashboards.gitlab.net/d/websockets-main/websockets-overview"
],
"google-cloud-storage": [
"https://dashboards.gitlab.net/d/google-cloud-storage-main/google-cloud-storage-overview"
],
"redis-sidekiq": [
"https://dashboards.gitlab.net/d/redis-sidekiq-main/redis-sidekiq-overview"
],
"marquee": [
"https://dashboards.gitlab.net/d/marquee-customer/marquee-customer-dashboard"
],
"product": [
"https://dashboards.gitlab.net/d/product-verify/product-performance-verify",
"https://dashboards.gitlab.net/d/product-monitor_error_budget/product-error-budgets-monitor",
"https://dashboards.gitlab.net/d/product-analytics_error_budget/product-error-budgets-analytics",
"https://dashboards.gitlab.net/d/product-plan/product-performance-plan",
"https://dashboards.gitlab.net/d/product-manage_error_budget/product-error-budgets-manage",
"https://dashboards.gitlab.net/d/product-govern_error_budget/product-error-budgets-govern",
"https://dashboards.gitlab.net/d/product-create/product-performance-create",
"https://dashboards.gitlab.net/d/product-release_error_budget/product-error-budgets-release",
"https://dashboards.gitlab.net/d/product-monitor/product-performance-monitor",
"https://dashboards.gitlab.net/d/product-verify_error_budget/product-error-budgets-verify",
"https://dashboards.gitlab.net/d/product-anti-abuse_error_budget/product-error-budgets-anti-abuse",
"https://dashboards.gitlab.net/d/product-protect/product-performance-protect",
"https://dashboards.gitlab.net/d/product-package_error_budget/product-error-budgets-package",
"https://dashboards.gitlab.net/d/product-systems_error_budget/product-error-budgets-systems",
"https://dashboards.gitlab.net/d/product-secure/product-performance-secure",
"https://dashboards.gitlab.net/d/product-enablement/product-performance-enablement",
"https://dashboards.gitlab.net/d/product-release/product-performance-release",
"https://dashboards.gitlab.net/d/product-plan_error_budget/product-error-budgets-plan",
"https://dashboards.gitlab.net/d/product-create_error_budget/product-error-budgets-create",
"https://dashboards.gitlab.net/d/product-secure_error_budget/product-error-budgets-secure",
"https://dashboards.gitlab.net/d/product-data_stores_error_budget/product-error-budgets-data_stores",
"https://dashboards.gitlab.net/d/product-manage/product-performance-manage",
"https://dashboards.gitlab.net/d/product-ecosystem_error_budget/product-error-budgets-ecosystem",
"https://dashboards.gitlab.net/d/product-package/product-performance-package"
],
"search": [
"https://dashboards.gitlab.net/d/search-main/search-overview"
],
"alerts": [
"https://dashboards.gitlab.net/d/alerts-worker_apdex_violation/alerts-worker-apdex-violation-alert",
"https://dashboards.gitlab.net/d/alerts-kube_containers_waiting/alerts-containers-waiting",
"https://dashboards.gitlab.net/d/alerts-long_running_transactions/alerts-long-running-transactions",
"https://dashboards.gitlab.net/d/alerts-saturation_component/alerts-saturation-component-alert",
"https://dashboards.gitlab.net/d/alerts-gitaly_capacity_planner/alerts-gitaly-capacity-planner",
"https://dashboards.gitlab.net/d/alerts-gcplbunhealthy/alerts-gcp-load-balancer-alert"
],
"kas": [
"https://dashboards.gitlab.net/d/kas-ci-tunnel/kas-ci-tunnel",
"https://dashboards.gitlab.net/d/kas-pod/kas-pod-info",
"https://dashboards.gitlab.net/d/kas-main/kas-overview"
],
"redis-sessions": [
"https://dashboards.gitlab.net/d/redis-sessions-main/redis-sessions-overview"
],
"redis-ratelimiting": [
"https://dashboards.gitlab.net/d/redis-ratelimiting-main/redis-ratelimiting-overview"
],
"customersdot": [
"https://dashboards.gitlab.net/d/customersdot-main/customersdot-overview"
],
"consul": [
"https://dashboards.gitlab.net/d/consul-pod/consul-pod-info",
"https://dashboards.gitlab.net/d/consul-main/consul-overview"
],
"nginx": [
"https://dashboards.gitlab.net/d/nginx-pod/nginx-pod-info",
"https://dashboards.gitlab.net/d/nginx-main/nginx-overview"
],
"praefect": [
"https://dashboards.gitlab.net/d/praefect-main/praefect-overview"
],
"redis-tracechunks": [
"https://dashboards.gitlab.net/d/redis-tracechunks-main/redis-tracechunks-overview"
],
"postgres-archive": [
"https://dashboards.gitlab.net/d/postgres-archive-main/postgres-archive-overview"
],
"registry": [
"https://dashboards.gitlab.net/d/registry-app/registry-application-detail",
"https://dashboards.gitlab.net/d/registry-database/registry-database-detail",
"https://dashboards.gitlab.net/d/registry-gc/registry-garbage-collection-detail",
"https://dashboards.gitlab.net/d/registry-migration/registry-migration-detail",
"https://dashboards.gitlab.net/d/registry-storage/registry-storage-detail",
"https://dashboards.gitlab.net/d/registry-pod/registry-pod-info",
"https://dashboards.gitlab.net/d/registry-main/registry-overview"
],
"delivery": [
"https://dashboards.gitlab.net/d/delivery-release_management/delivery-release-management",
"https://dashboards.gitlab.net/d/delivery-auto_deploy_packages/delivery-auto-deploy-packages-information",
"https://dashboards.gitlab.net/d/delivery-deployment_health/delivery-deployment-health",
"https://dashboards.gitlab.net/d/delivery-delivery_metrics/delivery-delivery-metrics-deployment",
"https://dashboards.gitlab.net/d/delivery-deployment_slo/delivery-deployment-slo",
"https://dashboards.gitlab.net/d/delivery-rollback_info/delivery-rollback-information"
],
"waf": [
"https://dashboards.gitlab.net/d/waf-main/waf-overview"
],
"ci-runners": [
"https://dashboards.gitlab.net/d/ci-runners-incident-database/ci-runners-incident-support-database",
"https://dashboards.gitlab.net/d/ci-runners-deployment/ci-runners-deployment-overview",
"https://dashboards.gitlab.net/d/ci-runners-incident-autoscaling/ci-runners-incident-support-autoscaling",
"https://dashboards.gitlab.net/d/ci-runners-autoscaling-algorithm/ci-runners-autoscaling-algorithm",
"https://dashboards.gitlab.net/d/ci-runners-incident-gitlab-application/ci-runners-incident-support-gitlab-application",
"https://dashboards.gitlab.net/d/ci-runners-incident-runner-manager/ci-runners-incident-support-runner-manager",
"https://dashboards.gitlab.net/d/ci-runners-business-stats/ci-runners-business-metrics",
"https://dashboards.gitlab.net/d/ci-runners-main/ci-runners-overview"
],
"api": [
"https://dashboards.gitlab.net/d/api-rails-controller/api-rails-controller",
"https://dashboards.gitlab.net/d/api-pod/api-pod-info",
"https://dashboards.gitlab.net/d/api-graphql/api-graphql",
"https://dashboards.gitlab.net/d/api-main/api-overview"
],
"cloud-sql": [
"https://dashboards.gitlab.net/d/cloud-sql-main/cloud-sql-overview"
],
"kube": [
"https://dashboards.gitlab.net/d/kube-main/kube-overview"
],
"pgbouncer-ci": [
"https://dashboards.gitlab.net/d/pgbouncer-ci-main/pgbouncer-ci-overview"
],
"monitoring": [
"https://dashboards.gitlab.net/d/monitoring-main/monitoring-overview"
],
"pgbouncer": [
"https://dashboards.gitlab.net/d/pgbouncer-main/pgbouncer-overview"
],
"sentry": [
"https://dashboards.gitlab.net/d/sentry-events/sentry-events",
"https://dashboards.gitlab.net/d/sentry-main/sentry-overview"
],
"pgbouncer-registry": [
"https://dashboards.gitlab.net/d/pgbouncer-registry-main/pgbouncer-registry-overview"
],
"logging": [
"https://dashboards.gitlab.net/d/logging-main/logging-overview"
],
"git": [
"https://dashboards.gitlab.net/d/git-rails-controller/git-rails-controller",
"https://dashboards.gitlab.net/d/git-pod/git-pod-info",
"https://dashboards.gitlab.net/d/git-shell-pod/git-gitlab-shell-pod-info",
"https://dashboards.gitlab.net/d/git-main/git-overview"
],
"patroni-registry": [
"https://dashboards.gitlab.net/d/patroni-registry-main/patroni-registry-overview"
],
"woodhouse": [
"https://dashboards.gitlab.net/d/woodhouse-main/woodhouse-overview"
]
}
Edited by Sylvester Chin