From a6fe1884ad5894377773976ddfbbd16fd14e77e8 Mon Sep 17 00:00:00 2001 From: "webops-guacbot[bot]" <214537265+webops-guacbot[bot]@users.noreply.github.com> Date: Wed, 7 Jan 2026 15:02:25 +0000 Subject: [PATCH] Translated file updates --- .../mobile/privacy_options.ast.json | 152 ++++ .../mobile/setup_and_configuration.ast.json | 169 ++++ .../mobile/privacy_options.ast.json | 152 ++++ .../mobile/setup_and_configuration.ast.json | 169 ++++ .../mobile/privacy_options.ast.json | 152 ++++ .../mobile/setup_and_configuration.ast.json | 169 ++++ content/ko/integrations/fly-io.md | 300 +++++++ content/ko/integrations/foundationdb.md | 287 ++++++ content/ko/integrations/gitlab.md | 829 ++++++++++++++---- .../mobile/privacy_options.ast.json | 152 ++++ .../mobile/setup_and_configuration.ast.json | 169 ++++ 11 files changed, 2536 insertions(+), 164 deletions(-) create mode 100644 content/es/session_replay/mobile/privacy_options.ast.json create mode 100644 content/es/session_replay/mobile/setup_and_configuration.ast.json create mode 100644 content/fr/session_replay/mobile/privacy_options.ast.json create mode 100644 content/fr/session_replay/mobile/setup_and_configuration.ast.json create mode 100644 content/ja/session_replay/mobile/privacy_options.ast.json create mode 100644 content/ja/session_replay/mobile/setup_and_configuration.ast.json create mode 100644 content/ko/integrations/fly-io.md create mode 100644 content/ko/integrations/foundationdb.md create mode 100644 content/ko/session_replay/mobile/privacy_options.ast.json create mode 100644 content/ko/session_replay/mobile/setup_and_configuration.ast.json diff --git a/content/es/session_replay/mobile/privacy_options.ast.json b/content/es/session_replay/mobile/privacy_options.ast.json new file mode 100644 index 00000000000..09c0c4510ce --- /dev/null +++ b/content/es/session_replay/mobile/privacy_options.ast.json @@ -0,0 +1,152 @@ +{ + "$$mdtype": "Node", + "inline": false, + "attributes": { + "frontmatter": { + "title": { + "itemTranslationData": { + "5616dd60a56d7707ff962e87b9fa067f": { + "string": "Opciones de privacidad de Mobile Session Replay" + } + } + }, + "description": { + "itemTranslationData": { + "9a8116f7e8910bb98e4fc9efbabdc973": { + "string": "Configura opciones de privacidad para Mobile Session Replay." + } + } + }, + "further_reading": { + "listTranslationData": { + "0": { + "link": "/session_replay/mobile", + "text": { + "itemTranslationData": { + "fb162115e8af8f878d9e5707abe12e1e": { + "string": "Session Replay para móviles" + } + } + }, + "tag": { + "itemTranslationData": { + "338fba5fc2188734d593c57bde09df32": { + "string": "Documentación" + } + } + } + }, + "1": { + "link": "/session_replay/mobile/app_performance", + "text": { + "itemTranslationData": { + "3bad2c19ca0a83a38ff776b95e1f8a4b": { + "string": "Cómo afecta Mobile Session Replay al rendimiento de las aplicaciones" + } + } + }, + "tag": { + "itemTranslationData": { + "338fba5fc2188734d593c57bde09df32": { + "string": "Documentación" + } + } + } + }, + "2": { + "link": "/session_replay/mobile/setup_and_configuration", + "text": { + "itemTranslationData": { + "691d661ed1349ca1ba794d2bad6739f0": { + "string": "Configuración de Mobile Session Replay" + } + } + }, + "tag": { + "itemTranslationData": { + "338fba5fc2188734d593c57bde09df32": { + "string": "Documentación" + } + } + } + }, + "3": { + "link": "/session_replay/mobile/troubleshooting", + "text": { + "itemTranslationData": { + "bf16cd1a410957692c82abe14fad0152": { + "string": "Solución de problemas de Mobile Session Replay" + } + } + }, + "tag": { + "itemTranslationData": { + "338fba5fc2188734d593c57bde09df32": { + "string": "Documentación" + } + } + } + }, + "4": { + "link": "/session_replay", + "text": { + "itemTranslationData": { + "6336fd746bcc46c6aa4d199a6266c29e": { + "string": "Session Replay" + } + } + }, + "tag": { + "itemTranslationData": { + "338fba5fc2188734d593c57bde09df32": { + "string": "Documentación" + } + } + } + } + } + }, + "content_filters": { + "listTranslationData": { + "0": { + "label": "SDK", + "trait_id": "platform", + "option_group_id": "rum_sdk_platform_options_v2" + } + } + } + } + }, + "children": { + "listTranslationData": { + "0": { + "$$mdtype": "Node", + "inline": false, + "attributes": { + "file": "real_user_monitoring/session_replay/mobile/privacy_options.mdoc.md" + }, + "children": { + "listTranslationData": {} + }, + "type": "tag", + "tag": "partial", + "annotations": { + "listTranslationData": { + "0": { + "type": "attribute", + "name": "file", + "value": "real_user_monitoring/session_replay/mobile/privacy_options.mdoc.md" + } + } + }, + "slots": {}, + "location": "line 28-29" + } + } + }, + "type": "document", + "annotations": { + "listTranslationData": {} + }, + "slots": {} +} \ No newline at end of file diff --git a/content/es/session_replay/mobile/setup_and_configuration.ast.json b/content/es/session_replay/mobile/setup_and_configuration.ast.json new file mode 100644 index 00000000000..d57eae34098 --- /dev/null +++ b/content/es/session_replay/mobile/setup_and_configuration.ast.json @@ -0,0 +1,169 @@ +{ + "$$mdtype": "Node", + "inline": false, + "attributes": { + "frontmatter": { + "title": { + "itemTranslationData": { + "09c427f36471a9777800731d4c8fba9f": { + "string": "Instalación y configuración de Session Replay para móviles" + } + } + }, + "description": { + "itemTranslationData": { + "c11aab16f8a3104ac69f99734e4a7013": { + "string": "Instala y configura Session Replay para móviles." + } + } + }, + "further_reading": { + "listTranslationData": { + "0": { + "link": "/session_replay/mobile/", + "text": { + "itemTranslationData": { + "ce6c3c781d75059f7fbe7186661b96e0": { + "string": "Session Replay para móviles" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "Documentación" + } + } + } + }, + "1": { + "link": "/session_replay/mobile/app_performance", + "text": { + "itemTranslationData": { + "ab35b85db736ffd1e461c8485e401308": { + "string": "Cómo afecta Mobile Session Replay al rendimiento de las aplicaciones" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "Documentación" + } + } + } + }, + "2": { + "link": "/session_replay/mobile/privacy_options", + "text": { + "itemTranslationData": { + "26506d24bb1c399504571e1615425fb5": { + "string": "Opciones de privacidad de Mobile Session Replay" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "Documentación" + } + } + } + }, + "3": { + "link": "/session_replay/mobile/troubleshooting", + "text": { + "itemTranslationData": { + "5615d411d465239fa5a76720ca89152c": { + "string": "Solución de problemas de Mobile Session Replay" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "Documentación" + } + } + } + }, + "4": { + "link": "/session_replay/", + "text": { + "itemTranslationData": { + "ab99140e610ac1c9552fe9f07fdff5ce": { + "string": "Session Replay" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "Documentación" + } + } + } + }, + "5": { + "link": "/real_user_monitoring/application_monitoring/android/web_view_tracking", + "text": { + "itemTranslationData": { + "16c1b8bece3356f2a9e5c6bc5d607bc7": { + "string": "Web View Tracking" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "Documentación" + } + } + } + } + } + }, + "content_filters": { + "listTranslationData": { + "0": { + "label": "SDK", + "trait_id": "platform", + "option_group_id": "rum_session_replay_sdk_options" + } + } + } + } + }, + "children": { + "listTranslationData": { + "0": { + "$$mdtype": "Node", + "inline": false, + "attributes": { + "file": "real_user_monitoring/session_replay/setup_and_configuration.mdoc.md" + }, + "children": { + "listTranslationData": {} + }, + "type": "tag", + "tag": "partial", + "annotations": { + "listTranslationData": { + "0": { + "type": "attribute", + "name": "file", + "value": "real_user_monitoring/session_replay/setup_and_configuration.mdoc.md" + } + } + }, + "slots": {}, + "location": "line 28-29" + } + } + }, + "type": "document", + "annotations": { + "listTranslationData": {} + }, + "slots": {} +} \ No newline at end of file diff --git a/content/fr/session_replay/mobile/privacy_options.ast.json b/content/fr/session_replay/mobile/privacy_options.ast.json new file mode 100644 index 00000000000..ac1e1500b80 --- /dev/null +++ b/content/fr/session_replay/mobile/privacy_options.ast.json @@ -0,0 +1,152 @@ +{ + "$$mdtype": "Node", + "inline": false, + "attributes": { + "frontmatter": { + "title": { + "itemTranslationData": { + "5616dd60a56d7707ff962e87b9fa067f": { + "string": "Options de confidentialité de Mobile Session Replay" + } + } + }, + "description": { + "itemTranslationData": { + "9a8116f7e8910bb98e4fc9efbabdc973": { + "string": "Configurer des options de confidentialité pour Mobile Session Replay." + } + } + }, + "further_reading": { + "listTranslationData": { + "0": { + "link": "/session_replay/mobile", + "text": { + "itemTranslationData": { + "fb162115e8af8f878d9e5707abe12e1e": { + "string": "Session Replay sur mobile" + } + } + }, + "tag": { + "itemTranslationData": { + "338fba5fc2188734d593c57bde09df32": { + "string": "Documentation" + } + } + } + }, + "1": { + "link": "/session_replay/mobile/app_performance", + "text": { + "itemTranslationData": { + "3bad2c19ca0a83a38ff776b95e1f8a4b": { + "string": "Impact de Mobile Session Replay sur les performances des applications" + } + } + }, + "tag": { + "itemTranslationData": { + "338fba5fc2188734d593c57bde09df32": { + "string": "Documentation" + } + } + } + }, + "2": { + "link": "/session_replay/mobile/setup_and_configuration", + "text": { + "itemTranslationData": { + "691d661ed1349ca1ba794d2bad6739f0": { + "string": "Installer et configurer Mobile Session Replay" + } + } + }, + "tag": { + "itemTranslationData": { + "338fba5fc2188734d593c57bde09df32": { + "string": "Documentation" + } + } + } + }, + "3": { + "link": "/session_replay/mobile/troubleshooting", + "text": { + "itemTranslationData": { + "bf16cd1a410957692c82abe14fad0152": { + "string": "Dépanner Mobile Session Replay" + } + } + }, + "tag": { + "itemTranslationData": { + "338fba5fc2188734d593c57bde09df32": { + "string": "Documentation" + } + } + } + }, + "4": { + "link": "/session_replay", + "text": { + "itemTranslationData": { + "6336fd746bcc46c6aa4d199a6266c29e": { + "string": "Session Replay" + } + } + }, + "tag": { + "itemTranslationData": { + "338fba5fc2188734d593c57bde09df32": { + "string": "Documentation" + } + } + } + } + } + }, + "content_filters": { + "listTranslationData": { + "0": { + "label": "SDK", + "trait_id": "platform", + "option_group_id": "rum_sdk_platform_options_v2" + } + } + } + } + }, + "children": { + "listTranslationData": { + "0": { + "$$mdtype": "Node", + "inline": false, + "attributes": { + "file": "real_user_monitoring/session_replay/mobile/privacy_options.mdoc.md" + }, + "children": { + "listTranslationData": {} + }, + "type": "tag", + "tag": "partial", + "annotations": { + "listTranslationData": { + "0": { + "type": "attribute", + "name": "file", + "value": "real_user_monitoring/session_replay/mobile/privacy_options.mdoc.md" + } + } + }, + "slots": {}, + "location": "line 28-29" + } + } + }, + "type": "document", + "annotations": { + "listTranslationData": {} + }, + "slots": {} +} \ No newline at end of file diff --git a/content/fr/session_replay/mobile/setup_and_configuration.ast.json b/content/fr/session_replay/mobile/setup_and_configuration.ast.json new file mode 100644 index 00000000000..0173247e0ec --- /dev/null +++ b/content/fr/session_replay/mobile/setup_and_configuration.ast.json @@ -0,0 +1,169 @@ +{ + "$$mdtype": "Node", + "inline": false, + "attributes": { + "frontmatter": { + "title": { + "itemTranslationData": { + "09c427f36471a9777800731d4c8fba9f": { + "string": "Installer et configurer Mobile Session Replay" + } + } + }, + "description": { + "itemTranslationData": { + "c11aab16f8a3104ac69f99734e4a7013": { + "string": "Installer et configurer Mobile Session Replay." + } + } + }, + "further_reading": { + "listTranslationData": { + "0": { + "link": "/session_replay/mobile/", + "text": { + "itemTranslationData": { + "ce6c3c781d75059f7fbe7186661b96e0": { + "string": "Session Replay sur mobile" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "Documentation" + } + } + } + }, + "1": { + "link": "/session_replay/mobile/app_performance", + "text": { + "itemTranslationData": { + "ab35b85db736ffd1e461c8485e401308": { + "string": "Impact de Mobile Session Replay sur les performances des applications" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "Documentation" + } + } + } + }, + "2": { + "link": "/session_replay/mobile/privacy_options", + "text": { + "itemTranslationData": { + "26506d24bb1c399504571e1615425fb5": { + "string": "Options de confidentialité de Mobile Session Replay" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "Documentation" + } + } + } + }, + "3": { + "link": "/session_replay/mobile/troubleshooting", + "text": { + "itemTranslationData": { + "5615d411d465239fa5a76720ca89152c": { + "string": "Dépanner Mobile Session Replay" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "Documentation" + } + } + } + }, + "4": { + "link": "/session_replay/", + "text": { + "itemTranslationData": { + "ab99140e610ac1c9552fe9f07fdff5ce": { + "string": "Session Replay" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "Documentation" + } + } + } + }, + "5": { + "link": "/real_user_monitoring/application_monitoring/android/web_view_tracking", + "text": { + "itemTranslationData": { + "16c1b8bece3356f2a9e5c6bc5d607bc7": { + "string": "Suivi des vues Web" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "Documentation" + } + } + } + } + } + }, + "content_filters": { + "listTranslationData": { + "0": { + "label": "SDK", + "trait_id": "platform", + "option_group_id": "rum_session_replay_sdk_options" + } + } + } + } + }, + "children": { + "listTranslationData": { + "0": { + "$$mdtype": "Node", + "inline": false, + "attributes": { + "file": "real_user_monitoring/session_replay/setup_and_configuration.mdoc.md" + }, + "children": { + "listTranslationData": {} + }, + "type": "tag", + "tag": "partial", + "annotations": { + "listTranslationData": { + "0": { + "type": "attribute", + "name": "file", + "value": "real_user_monitoring/session_replay/setup_and_configuration.mdoc.md" + } + } + }, + "slots": {}, + "location": "line 28-29" + } + } + }, + "type": "document", + "annotations": { + "listTranslationData": {} + }, + "slots": {} +} \ No newline at end of file diff --git a/content/ja/session_replay/mobile/privacy_options.ast.json b/content/ja/session_replay/mobile/privacy_options.ast.json new file mode 100644 index 00000000000..94ca4ae01ee --- /dev/null +++ b/content/ja/session_replay/mobile/privacy_options.ast.json @@ -0,0 +1,152 @@ +{ + "$$mdtype": "Node", + "inline": false, + "attributes": { + "frontmatter": { + "title": { + "itemTranslationData": { + "5616dd60a56d7707ff962e87b9fa067f": { + "string": "モバイルセッションリプレイのプライバシーオプション" + } + } + }, + "description": { + "itemTranslationData": { + "9a8116f7e8910bb98e4fc9efbabdc973": { + "string": "モバイルセッションリプレイのプライバシーオプションの構成" + } + } + }, + "further_reading": { + "listTranslationData": { + "0": { + "link": "/session_replay/mobile", + "text": { + "itemTranslationData": { + "fb162115e8af8f878d9e5707abe12e1e": { + "string": "Mobile Session Replay" + } + } + }, + "tag": { + "itemTranslationData": { + "338fba5fc2188734d593c57bde09df32": { + "string": "ドキュメント" + } + } + } + }, + "1": { + "link": "/session_replay/mobile/app_performance", + "text": { + "itemTranslationData": { + "3bad2c19ca0a83a38ff776b95e1f8a4b": { + "string": "モバイルセッションリプレイがアプリのパフォーマンスに与える影響" + } + } + }, + "tag": { + "itemTranslationData": { + "338fba5fc2188734d593c57bde09df32": { + "string": "ドキュメント" + } + } + } + }, + "2": { + "link": "/session_replay/mobile/setup_and_configuration", + "text": { + "itemTranslationData": { + "691d661ed1349ca1ba794d2bad6739f0": { + "string": "モバイルセッションリプレイの設定と構成" + } + } + }, + "tag": { + "itemTranslationData": { + "338fba5fc2188734d593c57bde09df32": { + "string": "ドキュメント" + } + } + } + }, + "3": { + "link": "/session_replay/mobile/troubleshooting", + "text": { + "itemTranslationData": { + "bf16cd1a410957692c82abe14fad0152": { + "string": "モバイルセッションリプレイのトラブルシューティング" + } + } + }, + "tag": { + "itemTranslationData": { + "338fba5fc2188734d593c57bde09df32": { + "string": "ドキュメント" + } + } + } + }, + "4": { + "link": "/session_replay", + "text": { + "itemTranslationData": { + "6336fd746bcc46c6aa4d199a6266c29e": { + "string": "Session Replay" + } + } + }, + "tag": { + "itemTranslationData": { + "338fba5fc2188734d593c57bde09df32": { + "string": "ドキュメント" + } + } + } + } + } + }, + "content_filters": { + "listTranslationData": { + "0": { + "label": "SDK", + "trait_id": "platform", + "option_group_id": "rum_sdk_platform_options_v2" + } + } + } + } + }, + "children": { + "listTranslationData": { + "0": { + "$$mdtype": "Node", + "inline": false, + "attributes": { + "file": "real_user_monitoring/session_replay/mobile/privacy_options.mdoc.md" + }, + "children": { + "listTranslationData": {} + }, + "type": "tag", + "tag": "partial", + "annotations": { + "listTranslationData": { + "0": { + "type": "attribute", + "name": "file", + "value": "real_user_monitoring/session_replay/mobile/privacy_options.mdoc.md" + } + } + }, + "slots": {}, + "location": "line 28-29" + } + } + }, + "type": "document", + "annotations": { + "listTranslationData": {} + }, + "slots": {} +} \ No newline at end of file diff --git a/content/ja/session_replay/mobile/setup_and_configuration.ast.json b/content/ja/session_replay/mobile/setup_and_configuration.ast.json new file mode 100644 index 00000000000..b7953fafc63 --- /dev/null +++ b/content/ja/session_replay/mobile/setup_and_configuration.ast.json @@ -0,0 +1,169 @@ +{ + "$$mdtype": "Node", + "inline": false, + "attributes": { + "frontmatter": { + "title": { + "itemTranslationData": { + "09c427f36471a9777800731d4c8fba9f": { + "string": "モバイルセッションリプレイの設定と構成" + } + } + }, + "description": { + "itemTranslationData": { + "c11aab16f8a3104ac69f99734e4a7013": { + "string": "モバイルセッションリプレイの設定と構成" + } + } + }, + "further_reading": { + "listTranslationData": { + "0": { + "link": "/session_replay/mobile/", + "text": { + "itemTranslationData": { + "ce6c3c781d75059f7fbe7186661b96e0": { + "string": "Mobile Session Replay" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "ドキュメント" + } + } + } + }, + "1": { + "link": "/session_replay/mobile/app_performance", + "text": { + "itemTranslationData": { + "ab35b85db736ffd1e461c8485e401308": { + "string": "モバイルセッションリプレイがアプリのパフォーマンスに与える影響" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "ドキュメント" + } + } + } + }, + "2": { + "link": "/session_replay/mobile/privacy_options", + "text": { + "itemTranslationData": { + "26506d24bb1c399504571e1615425fb5": { + "string": "モバイルセッションリプレイのプライバシーオプション" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "ドキュメント" + } + } + } + }, + "3": { + "link": "/session_replay/mobile/troubleshooting", + "text": { + "itemTranslationData": { + "5615d411d465239fa5a76720ca89152c": { + "string": "モバイルセッションリプレイのトラブルシューティング" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "ドキュメント" + } + } + } + }, + "4": { + "link": "/session_replay/", + "text": { + "itemTranslationData": { + "ab99140e610ac1c9552fe9f07fdff5ce": { + "string": "Session Replay" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "ドキュメント" + } + } + } + }, + "5": { + "link": "/real_user_monitoring/application_monitoring/android/web_view_tracking", + "text": { + "itemTranslationData": { + "16c1b8bece3356f2a9e5c6bc5d607bc7": { + "string": "Web ビューのトラッキング" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "ドキュメント" + } + } + } + } + } + }, + "content_filters": { + "listTranslationData": { + "0": { + "label": "SDK", + "trait_id": "platform", + "option_group_id": "rum_session_replay_sdk_options" + } + } + } + } + }, + "children": { + "listTranslationData": { + "0": { + "$$mdtype": "Node", + "inline": false, + "attributes": { + "file": "real_user_monitoring/session_replay/setup_and_configuration.mdoc.md" + }, + "children": { + "listTranslationData": {} + }, + "type": "tag", + "tag": "partial", + "annotations": { + "listTranslationData": { + "0": { + "type": "attribute", + "name": "file", + "value": "real_user_monitoring/session_replay/setup_and_configuration.mdoc.md" + } + } + }, + "slots": {}, + "location": "line 28-29" + } + } + }, + "type": "document", + "annotations": { + "listTranslationData": {} + }, + "slots": {} +} \ No newline at end of file diff --git a/content/ko/integrations/fly-io.md b/content/ko/integrations/fly-io.md new file mode 100644 index 00000000000..289a99ff011 --- /dev/null +++ b/content/ko/integrations/fly-io.md @@ -0,0 +1,300 @@ +--- +aliases: +- /ko/integrations/fly_io +app_id: fly-io +categories: +- OS & 시스템 +- 클라우드 +- 로그 수집 +custom_kind: 통합 +description: Fly.io 앱과 기기를 모니터링하세요. +integration_version: 3.0.0 +media: [] +supported_os: +- linux +- 윈도우즈(Windows) +- macos +title: Fly.io +--- +
+이 통합 기능은 현재 공개 베타 버전입니다. 운영 환경에서 활성화할 경우 주의가 필요합니다. +
+ +## 개요 + +이 점검은 Datadog Agent를 통해 [Fly.io](https://fly.io/) 메트릭을 모니터링합니다. + +## 설정 + +Fly 애플리케이션에서 실행되는 Agent에 이 검사를 설치하고 구성하려면 아래 지침을 따르세요. + +### 설치 + +Fly.io 점검은 [Datadog Agent](https://app.datadoghq.com/account/settings/agent/latest) 패키지에 포함되어 있습니다. Datadog Agent 실행 전용으로 하나의 Fly.io 애플리케이션을 배포하는 것을 권장합니다. 이 Agent는 Fly.io 점검을 실행하여 [Prometheus 메트릭](https://fly.io/docs/metrics-and-logs/metrics/#prometheus-on-fly-io)과 [Machines API](https://fly.io/docs/machines/api/)에서 추가 데이터를 수집할 수 있습니다. 또한, 조직 내 모든 Fly.io 애플리케이션에서 [트레이스](#Application-Traces) 및 사용자 지정 메트릭을 수신하도록 Agent를 구성할 수 있습니다. + +#### Fly.io 애플리케이션으로 Agent 배포 + +1. Fly.io에서 새 애플리케이션을 생성할 때 실행 시 이미지를 [Datadog Agent](https://console.cloud.google.com/artifacts/docker/datadoghq/us/gcr.io/agent)로 설정하걱나 `fly.toml` 파일에 이미지를 제공하세요. + + ``` + [build] + image = 'gcr.io/datadoghq/agent:7' + ``` + +1. `DD_API_KEY`라고 불리는 Datadog API 키에 대한 [시크릿](https://fly.io/docs/flyctl/secrets/)을 설정하고, 필요시 [사이트](https://docs.datadoghq.com/agent/troubleshooting/site/)를 `DD_SITE`로 설정하세요. + +1. 앱 디렉터리에 Fly.io 통합용 `conf.yaml` 파일을 생성하고, 통합을 [구성](#Configuration)한 다음, Agent의 `conf.d/fly_io.d/` 디렉터리에 `conf.yaml`로 마운트합니다. + + ``` + instances: + - empty_default_hostname: true + headers: + Authorization: Bearer + machines_api_endpoint: http://_api.internal:4280 + org_slug: + ``` + +1. 앱을 [배포합니다](https://fly.io/docs/flyctl/deploy/). + +**참고**: 애플리케이션에서 트레이스 및 사용자 지정 메트릭을 수집하려면 [애플리케이션 트레이스](#Application-traces)를 참고하세요. + +### 설정 + +1. Fly.io 성능 데이터 수집을 시작하려면 Agent의 구성 디렉터리의 루트에서 `conf.d/` 폴더에 있는 `fly_io.d/conf.yaml` 파일을 편집합니다. 사용 가능한 모든 구성 옵션은 [샘플 fly_io.d/conf.yaml](https://github.com/DataDog/integrations-core/blob/master/fly_io/datadog_checks/fly_io/data/conf.yaml.example)을 참고하세요. + +1. [Agent를 다시 시작합니다](https://docs.datadoghq.com/agent/guide/agent-commands/#start-stop-and-restart-the-agent). + +### 검증 + +[Agent 상태 하위 명령을 실행하고](https://docs.datadoghq.com/agent/guide/agent-commands/#agent-status-and-information) Checks 섹션에서 `fly_io`를 찾습니다. + +## 수집한 데이터 + +### Metrics + +| | | +| --- | --- | +| **fly_io.app.concurrency**
(gauge) | | +| **fly_io.app.connect_time.bucket**
(count) |
_second로 표시됨_ | +| **fly_io.app.connect_time.count**
(count) | | +| **fly_io.app.connect_time.sum**
(count) |
_second로 표시됨_ | +| **fly_io.app.count**
(gauge) | 앱 개수| +| **fly_io.app.http_response_time.bucket**
(count) |
_second로 표시됨_ | +| **fly_io.app.http_response_time.count**
(count) | | +| **fly_io.app.http_response_time.sum**
(count) |
_second로 표시됨_ | +| **fly_io.app.http_responses.count**
(gauge) |
_response로 표시됨_ | +| **fly_io.app.tcp_connects.count**
(gauge) | | +| **fly_io.app.tcp_disconnects.count**
(gauge) | | +| **fly_io.edge.data_in**
(gauge) |
_byte로 표시됨_ | +| **fly_io.edge.data_out**
(gauge) |
_byte로 표시됨_ | +| **fly_io.edge.http_response_time.bucket**
(count) |
_second로 표시됨_ | +| **fly_io.edge.http_response_time.count**
(count) | | +| **fly_io.edge.http_response_time.sum**
(count) |
_second로 표시됨_ | +| **fly_io.edge.http_responses.count**
(gauge) |
_response로 표시됨_ | +| **fly_io.edge.tcp_connects.count**
(gauge) | | +| **fly_io.edge.tcp_disconnects.count**
(gauge) | | +| **fly_io.edge.tls_handshake_errors**
(gauge) |
_error로 표시됨_ | +| **fly_io.edge.tls_handshake_time.bucket**
(count) |
_second로 표시됨_ | +| **fly_io.edge.tls_handshake_time.count**
(count) | | +| **fly_io.edge.tls_handshake_time.sum**
(count) |
_second로 표시됨_ | +| **fly_io.instance.cpu.count**
(count) | 각 CPU(cpu_id)가 다양한 종류의 작업(모드)을 실행하는 데 소요한 시간(센티초)| +| **fly_io.instance.disk.io_in_progress**
(gauge) | 요청이 적절한 struct request_queue에 전달될 때 증가하고, 요청 처리가 완료되면 감소합니다.| +| **fly_io.instance.disk.reads_completed.count**
(count) | 성공적으로 완료된 읽기 작업 총 횟수.| +| **fly_io.instance.disk.reads_merged.count**
(count) | 효율성을 위해 서로 인접한 읽기 및 쓰기 작업은 병합될 수 있으며, 이 필드는 이러한 병합이 얼마나 자주 발생했는지를 알려줍니다.| +| **fly_io.instance.disk.sectors_read.count**
(count) | 성공적으로 읽은 섹터의 총 개수.| +| **fly_io.instance.disk.sectors_written.count**
(count) | 성공적으로 작성된 섹터의 총 개수.| +| **fly_io.instance.disk.time_io.count**
(count) | 하나 이상의 요청이 시작되었거나 완료된 경우의 jiffy 수를 집계합니다. 요청이 2 jiffy 이상 실행되면, 동시 요청이 있는 경우 일부 I/O 시간이 집계되지 않을 수 있습니다.
_millisecond로 표시됨_ | +| **fly_io.instance.disk.time_io_weighted.count**
(count) | 이 필드는 I/O 시작, I/O 완료, I/O 병합, 또는 해당 통계를 읽을 때마다 증가하며, 그 증가분은 ‘진행 중인 I/O 개수(필드 9) × 마지막 업데이트 이후 경과한 I/O 시간(ms)’입니다.
_millisecond로 표시됨_ | +| **fly_io.instance.disk.time_reading.count**
(count) | 모든 읽기 작업에 소요된 총 밀리초 수.
_millisecond로 표시됨_ | +| **fly_io.instance.disk.time_writing.count**
(count) | 모든 쓰기 작업에 소요된 총 밀리초 수.
_millisecond로 표시됨_ | +| **fly_io.instance.disk.writes_completed.count**
(count) | 성공적으로 완료된 쓰기 작업의 총 횟수.| +| **fly_io.instance.disk.writes_merged.count**
(count) | 효율성을 위해 서로 인접한 읽기 및 쓰기 작업은 병합될 수 있으며, 이 필드는 이러한 병합이 얼마나 자주 발생했는지를 알려줍니다.| +| **fly_io.instance.filefd.allocated**
(gauge) | 할당된 파일 디스크립터 수| +| **fly_io.instance.filefd.max**
(gauge) | 최대 파일 디스크립터 수| +| **fly_io.instance.filesystem.block_size**
(gauge) | 파일 시스템 블록 크기.| +| **fly_io.instance.filesystem.blocks**
(gauge) | 파일 시스템의 총 블록 수| +| **fly_io.instance.filesystem.blocks_avail**
(gauge) | 사용 가능한 블록의 총 개수.| +| **fly_io.instance.filesystem.blocks_free**
(gauge) | 남아 있는 블록의 총 개수.| +| **fly_io.instance.load.avg**
(gauge) | 시스템 부하 평균은 시스템 실행 대기열에 있는 프로세스 수를 측정하는 값으로, 샘플은 1분, 5분, 15분 동안의 평균값을 나타냅니다.
_process로 표시됨_ | +| **fly_io.instance.memory.active**
(gauge) | 최근에 사용된 메모리이며, 꼭 필요한 경우가 아니면 일반적으로 회수되지 않습니다.
_byte로 표시됨_ | +| **fly_io.instance.memory.buffers**
(gauge) | 원시 디스크 블록을 위한 임시 저장소
_byte로 표시됨_ | +| **fly_io.instance.memory.cached**
(gauge) | 디스크에서 읽은 파일에 대한 메모리 캐시(페이지 캐시)와 tmpfs 및 shmem을 포함합니다. SwapCached는 포함되지 않습니다.
_byte로 표시됨_ | +| **fly_io.instance.memory.dirty**
(gauge) | 디스크에 다시 기록될 때까지 대기 중인 메모리
_byte로 표시됨_ | +| **fly_io.instance.memory.inactive**
(gauge) | 최근에 사용량이 적었던 메모리. 다른 용도로 재활용될 가능성이 더 높습니다.
_ byte로 표시됨_ | +| **fly_io.instance.memory.mem_available**
(gauge) | 스와핑 없이 새 애플리케이션을 시작하는 데 사용할 수 있는 메모리 용량을 추정한 값.
_byte로 표시됨_ | +| **fly_io.instance.memory.mem_free**
(gauge) | 사용 가능한 총 RAM.
_byte로 표시됨_ | +| **fly_io.instance.memory.mem_total**
(gauge) | 사용 가능한 총 RAM 용량(즉, 물리적 RAM에서 예약된 일부 비트와 커널 바이너리 코드를 제외한 용량)
_byte로 표시됨_ | +| **fly_io.instance.memory.pressure_full**
(gauge) | 모든 프로세스의 메모리 사용량| +| **fly_io.instance.memory.pressure_some**
(gauge) | 하나 이상의 프로세스에서 발생한 메모리 부족 상태| +| **fly_io.instance.memory.shmem**
(gauge) | 공유 메모리(shmem) 및 tmpfs에서 사용된 총 메모리 양
_byte로 표시됨_ | +| **fly_io.instance.memory.slab**
(gauge) | 커널 내 데이터 구조 캐시
_byte로 표시됨_ | +| **fly_io.instance.memory.swap_cached**
(gauge) | 한 번 스왑 아웃되었다가 다시 메모리로 불러왔지만, 여전히 스왑 파일에도 남아 있는 메모리
_byte로 표시됨_ | +| **fly_io.instance.memory.swap_free**
(gauge) | RAM에서 제거되어 일시적으로 디스크에 저장된 메모리
_byte로 표시됨_ | +| **fly_io.instance.memory.swap_total**
(gauge) | 사용 가능한 스왑 공간의 총량
_byte로 표시됨_ | +| **fly_io.instance.memory.vmalloc_chunk**
(gauge) | 사용 가능한 vmalloc 영역 중 가장 큰 연속 블록
_byte로 표시됨_ | +| **fly_io.instance.memory.vmalloc_total**
(gauge) | vmalloc 가상 주소 공간의 총 크기
_byte로 표시됨_ | +| **fly_io.instance.memory.vmalloc_used**
(gauge) | vmalloc 영역에서 사용되는 양
_byte로 표시됨_ | +| **fly_io.instance.memory.writeback**
(gauge) | 디스크에 활발하게 기록되고 있는 메모리
_byte로 표시됨_ | +| **fly_io.instance.net.recv_bytes.count**
(count) | 인터페이스가 수신한 유효 바이트 수.
_byte로 표시됨_ | +| **fly_io.instance.net.recv_compressed.count**
(count) | 올바르게 수신된 압축 패킷 수.| +| **fly_io.instance.net.recv_drop.count**
(count) | 수신되었지만 처리되지 않은 패킷 수(예: 리소스 부족 또는 지원되지 않는 프로토콜로 인해 미처리).
_packet으로 표시됨_ | +| **fly_io.instance.net.recv_errs.count**
(count) | 네트워크 디바이스에 수신된 불량 패킷의 총 개수.
_packet으로 표시됨_ | +| **fly_io.instance.net.recv_fifo.count**
(count) | 수신자 FIFO 오버플로 이벤트 카운터.| +| **fly_io.instance.net.recv_frame.count**
(count) | 수신자 프레임 정렬 오류.| +| **fly_io.instance.net.recv_multicast.count**
(count) | 수신된 멀티캐스트 패킷.
_packet으로 표시됨_ | +| **fly_io.instance.net.recv_packets.count**
(count) | 인터페이스가 수신한 정상 패킷 수.
_packet으로 표시됨_ | +| **fly_io.instance.net.sent_bytes.count**
(count) | 정상적으로 전송된 바이트 수.
_byte로 표시됨_ | +| **fly_io.instance.net.sent_carrier.count**
(count) | 전송 중 캐리어 손실로 인한 프레임 전송 오류 횟수.| +| **fly_io.instance.net.sent_colls.count**
(count) | 패킷 전송 중 충돌 횟수.| +| **fly_io.instance.net.sent_compressed.count**
(count) | 전송된 압축 패킷 수.| +| **fly_io.instance.net.sent_drop.count**
(count) | 전송 도중 손실된 패킷 수(예: 리소스 부족으로 인한 손실).
_packet으로 표시됨_ | +| **fly_io.instance.net.sent_errs.count**
(count) | 전송 오류의 총 횟수.| +| **fly_io.instance.net.sent_fifo.count**
(count) | 전송된 FIFO 오버플로 이벤트 카운터.| +| **fly_io.instance.net.sent_packets.count**
(count) | 성공적으로 전송된 패킷 수.
_packet으로 표시됨_ | +| **fly_io.instance.up**
(gauge) | VM이 정상적으로 보고 시 1을 반환| +| **fly_io.instance.volume.size**
(gauge) | 볼륨 크기(바이트).
_byte로 표시됨_ | +| **fly_io.instance.volume.used**
(gauge) | 사용된 볼륨의 백분율.
_byte로 표시됨_ | +| **fly_io.machine.count**
(gauge) | 실행 중인 머신 수| +| **fly_io.machine.cpus.count**
(gauge) | CPU 수| +| **fly_io.machine.gpus.count**
(gauge) | GPU 수| +| **fly_io.machine.memory**
(gauge) | 머신 메모리
_megabyte로 표시됨_ | +| **fly_io.machine.swap_size**
(gauge) | Fly Machine을 위해 예약할 스왑 공간
_megabyte로 표시됨_ | +| **fly_io.machines_api.up**
(gauge) | 점검이 머신 API에 접근할 수 있는지 여부| +| **fly_io.pg.database.size**
(gauge) | 데이터베이스 크기
_byte로 표시됨_ | +| **fly_io.pg.replication.lag**
(gauge) | 복제 지연| +| **fly_io.pg_stat.activity.count**
(gauge) | 이 상태의 연결 수| +| **fly_io.pg_stat.activity.max_tx_duration**
(gauge) | 활성 트랜잭션이 실행되는 최대 시간(초)
_second로 표시됨_ | +| **fly_io.pg_stat.archiver.archived_count**
(gauge) | 성공적으로 아카이브된 WAL 파일 수| +| **fly_io.pg_stat.archiver.failed_count**
(gauge) | WAL 파일 아카이브 실패 시도 횟수| +| **fly_io.pg_stat.bgwriter.buffers_alloc**
(gauge) | 할당된 버퍼 수| +| **fly_io.pg_stat.bgwriter.buffers_backend**
(gauge) | 백엔드에서 직접 기록한 버퍼 수| +| **fly_io.pg_stat.bgwriter.buffers_backend_fsync**
(gauge) | 백엔드가 자체 fsync 호출을 실행해야 했던 횟수 (일반적으로 백엔드가 자체 쓰기를 수행하는 경우에도 백그라운드 라이터가 이를 처리합니다)| +| **fly_io.pg_stat.bgwriter.buffers_checkpoint**
(gauge) | 체크포인트 중에 기록된 버퍼 수| +| **fly_io.pg_stat.bgwriter.buffers_clean**
(gauge) | 백그라운드 라이터가 기록한 버퍼 수| +| **fly_io.pg_stat.bgwriter.checkpoint_sync_time**
(gauge) | 체크포인트 처리 과정에서 파일이 디스크에 동기화되는 데 소요된 총 시간(밀리초)
_millisecond로 표시됨_ | +| **fly_io.pg_stat.bgwriter.checkpoint_write_time**
(gauge) | 체크포인트 처리 과정에서 파일이 디스크에 기록되는 데 소요된 총 시간(밀리초)
_millisecond로 표시됨_ | +| **fly_io.pg_stat.bgwriter.checkpoints_req**
(gauge) | 요청된 체크포인트 중 실행된 횟수| +| **fly_io.pg_stat.bgwriter.checkpoints_timed**
(gauge) | 예약된 체크포인트 중 실행된 횟수| +| **fly_io.pg_stat.bgwriter.maxwritten_clean**
(gauge) | 백그라운드 라이터가 너무 많은 버퍼를 기록하여 클리닝 스캔을 중단한 횟수| +| **fly_io.pg_stat.bgwriter.stats_reset**
(gauge) | 이 통계가 마지막으로 초기화된 시간| +| **fly_io.pg_stat.database.blk_read_time**
(gauge) | 이 데이터베이스에서 백엔드가 데이터 파일 블록을 읽는 데 소요된 시간(밀리초)
_millisecond로 표시됨_ | +| **fly_io.pg_stat.database.blk_write_time**
(gauge) | 이 데이터베이스에서 백엔드가 데이터 파일 블록을 쓰는 데 소요된 시간(밀리초)
_millisecond로 표시됨_ | +| **fly_io.pg_stat.database.blks_hit**
(gauge) | 디스크 블록이 버퍼 캐시에 이미 존재하여 읽기 작업이 필요하지 않았던 횟수(이는 PostgreSQL 버퍼 캐시의 적중률만 포함하며 운영 체제의 파일 시스템 캐시는 포함하지 않습니다)| +| **fly_io.pg_stat.database.blks_read**
(gauge) | 이 데이터베이스에서 읽은 디스크 블록 수| +| **fly_io.pg_stat.database.conflicts**
(gauge) | 이 데이터베이스에서 복구와의 충돌로 인해 취소된 쿼리 수. 충돌은 대기 서버에서만 발생합니다.| +| **fly_io.pg_stat.database.conflicts_confl_bufferpin**
(gauge) | 이 데이터베이스에서 버퍼 고정으로 인해 취소된 쿼리 수| +| **fly_io.pg_stat.database.conflicts_confl_deadlock**
(gauge) | 이 데이터베이스에서 데드락 발생으로 인해 취소된 쿼리 수| +| **fly_io.pg_stat.database.conflicts_confl_lock**
(gauge) | 이 데이터베이스에서 잠금 시간 초과로 인해 취소된 쿼리 수| +| **fly_io.pg_stat.database.conflicts_confl_snapshot**
(gauge) | 이 데이터베이스에서 오래된 스냅샷으로 인해 취소된 쿼리 수| +| **fly_io.pg_stat.database.conflicts_confl_tablespace**
(gauge) | 이 데이터베이스에서 삭제된 테이블스페이스로 인해 취소된 쿼리 수| +| **fly_io.pg_stat.database.deadlocks**
(gauge) | 이 데이터베이스에서 감지된 데드락 발생 건 수| +| **fly_io.pg_stat.database.numbackends**
(gauge) | 현재 이 데이터베이스에 연결된 백엔드 수. 이 뷰에서 현재 상태를 반영하는 값을 반환하는 유일한 열입니다. 다른 모든 열은 마지막 재설정 이후 누적된 값을 반합니다.| +| **fly_io.pg_stat.database.stats_reset**
(gauge) | 이 통계가 마지막으로 초기화된 시간| +| **fly_io.pg_stat.database.tup_deleted**
(gauge) | 이 데이터베이스에서 쿼리가 삭제한 행 수| +| **fly_io.pg_stat.database.tup_fetched**
(gauge) | 이 데이터베이스에서 쿼리가 가져온 행 수| +| **fly_io.pg_stat.database.tup_inserted**
(gauge) | 이 데이터베이스에서 쿼리가 삽입한 행 수| +| **fly_io.pg_stat.database.tup_returned**
(gauge) | 이 데이터베이스에서 쿼리가 반환한 행 수| +| **fly_io.pg_stat.database.tup_updated**
(gauge) | 이 데이터베이스에서 쿼리가 업데이트한 행 수| +| **fly_io.pg_stat.database.xact_commit**
(gauge) | 이 데이터베이스에서 커밋된 트랜잭션 수| +| **fly_io.pg_stat.database.xact_rollback**
(gauge) | 이 데이터베이스에서 롤백된 트랜잭션 수| +| **fly_io.pg_stat.replication.pg_current_wal_lsn_bytes**
(gauge) | WAL 위치(바이트)
_byte로 표시됨_ | +| **fly_io.pg_stat.replication.pg_wal_lsn_diff**
(gauge) | 마스터와 슬레이브 간 지연(바이트)
_byte로 표시됨_ | +| **fly_io.pg_stat.replication.reply_time**
(gauge) | 대기 서버에서 수신한 마지막 응답 메시지의 전송 시간| +| **fly_io.volume.block_size**
(gauge) | 각 메모리 블록의 크기(바이트)
_byte로 표시됨_ | +| **fly_io.volume.blocks.count**
(gauge) | 볼륨에 포함된 블록의 총 개수| +| **fly_io.volume.blocks_avail**
(gauge) | 볼륨에서 데이터를 저장할 수 있는 블록 수| +| **fly_io.volume.blocks_free**
(gauge) | 데이터 및 루트 사용자 작업에 사용 가능한 총 블록 수| +| **fly_io.volume.created**
(gauge) | 볼륨이 생성되었는지 여부| +| **fly_io.volume.encrypted**
(gauge) | 볼륨이 암호화되었는지 여부| +| **fly_io.volume.size**
(gauge) | 볼륨 크기(GB)
_gigabyte로 표시됨_ | + +### 이벤트 + +Fly.io 통합은 이벤트를 포함하지 않습니다. + +### 서비스 점검 + +Fly.io 통합은 서비스 점검을 포함하지 않습니다. + +### 애플리케이션 트레이스 + +Fly.io 환경에서 애플리케이션의 트레이스를 수집하려면 다음 단계를 따르세요. + +1. 애플리케이션을 [계측합니다](https://docs.datadoghq.com/tracing/trace_collection/#instrumentation-types). + +1. Datadog Agent를 Fly.io 애플리케이션으로 [배포합니다](#deploying-the-agent-as-a-flyio-application) . + +1. 애플리케이션의 `fly.toml` 또는 `Dockerfile`에 필요한 환경 변수를 설정하고 애플리케이션을 배포합니다. + + Datadog Agent 애플리케이션에 메트릭을 전송하려면 다음을 환경 변수로 설정하세요. + + ``` + [env] + DD_AGENT_HOST=".internal" + + ``` + + 로그와 메트릭에 대해 동일한 호스트를 보고하도록 하려면 다음 환경 변수를 설정하세요. + + ``` + DD_TRACE_REPORT_HOSTNAME="true" + ``` + + [통합 서비스 태깅](https://docs.datadoghq.com/getting_started/tagging/unified_service_tagging/?tab=docker#configuration-1)을 사용하려면 다음 환경 변수를 설정하세요. + + ``` + DD_SERVICE="APP_NAME" + DD_ENV="ENV_NAME" + DD_VERSION="VERSION" + ``` + + 로그와 트레이스를 연관시키기 위해 다음 [단계](https://docs.datadoghq.com/tracing/other_telemetry/connect_logs_and_traces/)를 따르고 이 환경 변수를 설정하세요. + + ``` + DD_LOGS_INJECTION="true" + ``` + +1. [Datadog Agent 애플리케이션](#Deploying-the-agent-as-a-Fly.io-application) `fly.toml`에서 다음 환경 변수를 설정하고 앱을 배포합니다. + + ``` + [env] + DD_APM_ENABLED = "true" + DD_APM_NON_LOCAL_TRAFFIC = "true" + DD_DOGSTATSD_NON_LOCAL_TRAFFIC = "true" + DD_BIND_HOST = "fly-global-services" + ``` + +**참고**: Fly.io 인스턴스 설정에서 APM 및 DogStatsD 포트가 (활성화된 경우) 공개적으로 노출되지 않도록 하세요. + +### 로그 수집 + +Fly.io 애플리케이션에서 로그를 수집하기 위해 [fly_logs_shipper](https://github.com/superfly/fly-log-shipper)를 사용합니다. + +1. 로그 전송 [프로젝트](https://github.com/superfly/fly-log-shipper)를 복제합니다. + +1. `vector-configs/vector.toml` 파일을 수정하여 로그 소스를 `fly_io`로 설정합니다. + + ``` + [transforms.log_json] + type = "remap" + inputs = ["nats"] + source = ''' + . = parse_json!(.message) + .ddsource = 'fly-io' + .host = .fly.app.instance + .env = + ''' + ``` + +이 구성은 기본적인 Fly 관련 로그 속성을 파싱합니다. 모든 로그 속성을 완전히 파싱하려면 [Vector 변환](https://vector.dev/docs/reference/configuration/transforms/lua/)을 사용하여 앱별로 `ddsource`를 [알려진 로그 통합](https://docs.datadoghq.com/logs/log_configuration/pipelines/?tab=source#integration-pipeline-library)으로 설정합니다. + +3. [NATS](https://github.com/superfly/fly-log-shipper?tab=readme-ov-file#nats-source-configuration)에 대한 [시크릿](https://fly.io/docs/flyctl/secrets/)을 설정합니다. + `ORG` 및 `ACCESS_TOKEN` + +1. [Datadog](https://github.com/superfly/fly-log-shipper?tab=readme-ov-file#datadog) `DATADOG_API_KEY` 및 `DATADOG_SITE`에 대한 [시크릿](https://fly.io/docs/flyctl/secrets/)을 설정합니다. + +1. 로그 전송 앱을 [배포합니다](https://docs.datadoghq.com/agent/guide/agent-commands/#agent-status-and-information). + +## 트러블슈팅 + +도움이 필요하세요? [Datadog 지원 팀](https://docs.datadoghq.com/help/)에 문의하세요. \ No newline at end of file diff --git a/content/ko/integrations/foundationdb.md b/content/ko/integrations/foundationdb.md new file mode 100644 index 00000000000..95dcb51d96e --- /dev/null +++ b/content/ko/integrations/foundationdb.md @@ -0,0 +1,287 @@ +--- +app_id: foundationdb +categories: +- 데이터 스토어 +- 로그 수집 +custom_kind: integration +description: FoundationDB 통합 +integration_version: 3.3.1 +media: [] +supported_os: +- 리눅스 +- macos +- windows +title: FoundationDB +--- +## 개요 + +이 점검은 Datadog Agent를 통해 [FoundationDB](https://www.foundationdb.org/)를 모니터링합니다. FoundationDB 클러스터의 상태를 확인하는 것 외에도 다양한 메트릭을 수집하고, 필요시 FoundationDB 트랜잭션 로그도 수집합니다. + +## 설정 + +점검 및 메트릭은 FoundationDB 클러스터 전체에 적용되며, 하나의 호스트에만 설치해야 합니다. 해당 호스트는 FoundationDB가 실행 중인 호스트일 필요는 없으며, FoundationDB에 접근 권한이 있는 호스트이면 됩니다. + +### 설치 + +FoundationDB 점검은 [Datadog Agent](https://app.datadoghq.com/account/settings/agent/latest) 패키지에 포함되어 있지만, [FoundationDB 클라이언트](https://apple.github.io/foundationdb/downloads.html)가 설치되어 있어야 합니다. + +### 설정 + +{{< tabs >}} + +{{% tab "Host" %}} + +#### 호스트 + +호스트에서 실행 중인 에이전트에 이 점검을 구성하는 방법: + +##### 메트릭 수집 + +1. FoundationDB 메트릭 수집을 시작하려면 Agent 구성 디렉터리의 루트에서 `conf.d/` 폴더에 있는 `foundationdb.d/conf.yaml` 파일을 편집하세요. + 사용 가능한 모든 구성 옵션은 [샘플 foundationdb.d/conf.yaml](https://github.com/DataDog/integrations-core/blob/master/foundationdb/datadog_checks/foundationdb/data/conf.yaml.example)을 참고하세요. + +1. 확인할 클러스터는 [기본 위치](https://apple.github.io/foundationdb/administration.html#default-cluster-file)에서 클러스터 파일을 검색하여 결정합니다. 클러스터 파일이 다른 위치에 있는 경우, + `cluster_file` 속성을 설정하세요. 체크 인스턴스당 하나의 클러스터만 모니터링할 수 있습니다. + +1. 클러스터가 TLS를 사용하도록 구성된 경우(https://www.foundationdb.org/), 구성에 추가 속성을 설정해야 합니다. 이 속성들은 해당 클러스터에 연결하기 위해 + `fdbcli`에 제공된 TLS 관련 옵션 이름을 따릅니다. + +1. [Agent를 다시 시작합니다](https://docs.datadoghq.com/agent/guide/agent-commands/#start-stop-and-restart-the-agent). + +##### 로그 수집 + +FoundationDB는 기본적으로 XML 로그를 기록하지만, Datadog 통합은 JSON 로그를 예상합니다. 따라서 FoundationDB 구성을 변경해야 합니다. + +1. `foundationdb.conf`파일을 찾은 다음 `fdbserver` 섹션에서 + `json` 값을 얻기 위해 키 `trace_format`을 추가하거나 변경합니다. 또한, + `logdir`를 기록해 둡니다. + + ``` + [fdbserver] + ... + logdir = /var/log/foundationdb + trace_format = json + ``` + +1. 변경 사항이 적용되도록 FoundationDB 서버를 재시작합니다. + `logdir`에 있는 로그가 JSON으로 작성되었는지 확인합니다. + +1. `datadog.yaml` 파일에서 로그 수집이 활성화되어 있는지 확인합니다. + + ```yaml + logs_enabled: true + ``` + +1. `foundationdb.d/conf.yaml` 파일의 `logs` 섹션에서 주석 처리를 해제하고 + 경로를 FoundationDB 구성 파일에 있는 경로로 설정한 후 + `*.json`을 추가합니다. + + ```yaml + logs: + - type: file + path: /var/log/foundationdb/*.json + service: foundationdb + source: foundationdb + ``` + +1. Datadog Agent가 디렉터리 목록을 조회하고 + 파일을 읽을 수 있는 권한을 가지고 있는지 확인하세요. + +1. Datadog Agent를 재시작합니다. + +{{% /tab %}} + +{{% tab "컨테이너화" %}} + +#### 컨테이너화된 환경 + +컨테이너화된 환경의 경우 [Autodiscovery 통합 템플릿](https://docs.datadoghq.com/agent/kubernetes/integrations/)에 아래 파라미터를 적용하는 방법이 안내되어 있습니다. + +##### 메트릭 수집 + +| 파라미터 | 값 | +|----------------------|------------------------------------------------------------| +| `` | `foundationdb` | +| `` | 비어 있음 또는 `{}` | +| `` | `{}` | + +##### 로그 수집 + +Datadog Agent에서는 로그 수집이 기본적으로 비활성화되어 있습니다. 이를 활성화하려면 [Kubernetes 로그 수집](https://docs.datadoghq.com/agent/kubernetes/log/)을 참고하세요. + +| 파라미터 | 값 | +|----------------|-------------------------------------------| +| `` | `{"source": "foundationdb", "service": ""}` | + +{{% /tab %}} + +{{< /tabs >}} + +### 검증 + +[Agent 상태 하위 명령을 실행하고](https://docs.datadoghq.com/agent/guide/agent-commands/#agent-status-and-information) **Checks** 섹션에서 `foundationdb`를 찾습니다. + +## 수집한 데이터 + +### Metrics + +| | | +| --- | --- | +| **foundationdb.clients.connected**
(gauge) | 클라이언트 버전별로 태그되고 연결된 클라이언트 수
_connection으로 표시됨_ | +| **foundationdb.cluster_generation**
(gauge) | | +| **foundationdb.coordinators**
(gauge) | 도달 가능성별로 태그된 코디네이터 수
_instance로 표시됨_ | +| **foundationdb.data.average_partition_size_bytes**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.data.least_operating_space_bytes_log_server**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.data.moving_data.in_flight_bytes**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.data.moving_data.in_queue_bytes**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.data.moving_data.total_written_bytes**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.data.partitions_count**
(gauge) | | +| **foundationdb.data.system_kv_size_bytes**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.data.total_disk_used_bytes**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.data.total_kv_size_bytes**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.datacenter_lag.seconds**
(gauge) |
_second로 표시됨_ | +| **foundationdb.degraded_processes**
(gauge) |
_process로 표시됨_ | +| **foundationdb.excluded_machines**
(gauge) |
_host로 표시됨_ | +| **foundationdb.excluded_processes**
(gauge) |
_process로 표시됨_ | +| **foundationdb.fault_tolerance.max_zone_failures_without_losing_availability**
(gauge) |
_location으로 표시됨_ | +| **foundationdb.fault_tolerance.max_zone_failures_without_losing_data**
(gauge) |
_location으로 표시됨_ | +| **foundationdb.instances**
(count) |
_instance로 표시됨_ | +| **foundationdb.latency_probe.batch_priority_transaction_start_seconds**
(gauge) | 배치 우선순위 트랜잭션 시작 시간(초)
_second로 표시됨_ | +| **foundationdb.latency_probe.commit_seconds**
(gauge) |
_second로 표시됨_ | +| **foundationdb.latency_probe.immediate_priority_transaction_start_seconds**
(gauge) |
_second로 표시됨_ | +| **foundationdb.latency_probe.read_seconds**
(gauge) |
_second로 표시됨_ | +| **foundationdb.latency_probe.transaction_start_seconds**
(gauge) |
_second로 표시됨_ | +| **foundationdb.machines**
(gauge) |
_host로 표시됨_ | +| **foundationdb.maintenance_seconds_remaining**
(gauge) |
_second로 표시됨_ | +| **foundationdb.process.cpu.usage_cores**
(gauge) |
_core로 표시됨_ | +| **foundationdb.process.disk.busy**
(gauge) |
_fraction으로 표시됨_ | +| **foundationdb.process.disk.free_bytes**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.process.disk.reads.hz**
(gauge) |
_read로 표시됨_ | +| **foundationdb.process.disk.total_bytes**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.process.disk.writes.hz**
(gauge) |
_write로 표시됨_ | +| **foundationdb.process.memory.available_bytes**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.process.memory.limit_bytes**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.process.memory.unused_allocated_memory**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.process.memory.used_bytes**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.process.network.connection_errors.hz**
(gauge) |
_error로 표시됨_ | +| **foundationdb.process.network.connections_closed.hz**
(gauge) |
_connection으로 표시됨_ | +| **foundationdb.process.network.connections_established.hz**
(gauge) |
_connection으로 표시됨_ | +| **foundationdb.process.network.current_connections**
(gauge) |
_connection으로 표시됨_ | +| **foundationdb.process.network.megabits_received.hz**
(gauge) | | +| **foundationdb.process.network.megabits_sent.hz**
(gauge) | | +| **foundationdb.process.network.tls_policy_failures.hz**
(gauge) |
_error로 표시됨_ | +| **foundationdb.process.role.bytes_queried.counter**
(count) |
_query로 표시됨_ | +| **foundationdb.process.role.bytes_queried.hz**
(gauge) |
_query로 표시됨_ | +| **foundationdb.process.role.commit_latency_statistics.count**
(count) |
_millisecond로 표시됨_ | +| **foundationdb.process.role.commit_latency_statistics.max**
(gauge) |
_millisecond로 표시됨_ | +| **foundationdb.process.role.commit_latency_statistics.min**
(gauge) |
_millisecond로 표시됨_ | +| **foundationdb.process.role.commit_latency_statistics.p25**
(gauge) |
_millisecond로 표시됨_ | +| **foundationdb.process.role.commit_latency_statistics.p90**
(gauge) |
_millisecond로 표시됨_ | +| **foundationdb.process.role.commit_latency_statistics.p99**
(gauge) |
_millisecond로 표시됨_ | +| **foundationdb.process.role.data_lag.seconds**
(gauge) |
_second로 표시됨_ | +| **foundationdb.process.role.durability_lag.seconds**
(gauge) |
_second로 표시됨_ | +| **foundationdb.process.role.durable_bytes.counter**
(count) |
_byte로 표시됨_ | +| **foundationdb.process.role.durable_bytes.hz**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.process.role.finished_queries.counter**
(count) |
_query로 표시됨_ | +| **foundationdb.process.role.finished_queries.hz**
(gauge) |
_query로 표시됨_ | +| **foundationdb.process.role.grv_latency_statistics.default.count**
(count) |
_millisecond로 표시됨_ | +| **foundationdb.process.role.grv_latency_statistics.default.max**
(gauge) |
_millisecond로 표시됨_ | +| **foundationdb.process.role.grv_latency_statistics.default.min**
(gauge) |
_millisecond로 표시됨_ | +| **foundationdb.process.role.grv_latency_statistics.default.p25**
(gauge) |
_millisecond로 표시됨_ | +| **foundationdb.process.role.grv_latency_statistics.default.p90**
(gauge) |
_millisecond로 표시됨_ | +| **foundationdb.process.role.grv_latency_statistics.default.p99**
(gauge) |
_millisecond로 표시됨_ | +| **foundationdb.process.role.input_bytes.counter**
(count) |
_byte로 표시됨_ | +| **foundationdb.process.role.input_bytes.hz**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.process.role.keys_queried.counter**
(count) |
_key로 표시됨_ | +| **foundationdb.process.role.keys_queried.hz**
(gauge) |
_key로 표시됨_ | +| **foundationdb.process.role.kvstore_available_bytes**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.process.role.kvstore_free_bytes**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.process.role.kvstore_inline_keys**
(gauge) |
_key로 표시됨_ | +| **foundationdb.process.role.kvstore_total_bytes**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.process.role.kvstore_total_nodes**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.process.role.kvstore_total_size**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.process.role.kvstore_used_bytes**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.process.role.local_rate**
(gauge) |
_unit으로 표시됨_ | +| **foundationdb.process.role.low_priority_queries.counter**
(count) |
_query로 표시됨_ | +| **foundationdb.process.role.low_priority_queries.hz**
(gauge) |
_query로 표시됨_ | +| **foundationdb.process.role.mutation_bytes.counter**
(count) |
_byte로 표시됨_ | +| **foundationdb.process.role.mutation_bytes.hz**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.process.role.mutations.counter**
(count) |
_item으로 표시됨_ | +| **foundationdb.process.role.mutations.hz**
(gauge) |
_item으로 표시됨_ | +| **foundationdb.process.role.query_queue_max**
(gauge) |
_query로 표시됨_ | +| **foundationdb.process.role.queue_disk_available_bytes**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.process.role.queue_disk_total_bytes**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.process.role.queue_length**
(gauge) |
_item으로 표시됨_ | +| **foundationdb.process.role.read_latency_statistics.count**
(count) |
_millisecond로 표시됨_ | +| **foundationdb.process.role.read_latency_statistics.max**
(gauge) |
_millisecond로 표시됨_ | +| **foundationdb.process.role.read_latency_statistics.min**
(gauge) |
_millisecond로 표시됨_ | +| **foundationdb.process.role.read_latency_statistics.p25**
(gauge) |
_millisecond로 표시됨_ | +| **foundationdb.process.role.read_latency_statistics.p90**
(gauge) |
_millisecond로 표시됨_ | +| **foundationdb.process.role.read_latency_statistics.p99**
(gauge) |
_millisecond로 표시됨_ | +| **foundationdb.process.role.stored_bytes**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.process.role.total_queries.counter**
(count) |
_query로 표시됨_ | +| **foundationdb.process.role.total_queries.hz**
(gauge) |
_query로 표시됨_ | +| **foundationdb.processes**
(gauge) |
_process로 표시됨_ | +| **foundationdb.processes_per_role**
(gauge) |
_process로 표시됨_ | +| **foundationdb.processes_per_role.cluster_controller**
(gauge) |
_process로 표시됨_ | +| **foundationdb.processes_per_role.coordinator**
(gauge) |
_process로 표시됨_ | +| **foundationdb.processes_per_role.data_distributor**
(gauge) |
_process로 표시됨_ | +| **foundationdb.processes_per_role.log**
(gauge) |
_process로 표시됨_ | +| **foundationdb.processes_per_role.master**
(gauge) |
_process로 표시됨_ | +| **foundationdb.processes_per_role.proxy**
(gauge) |
_process로 표시됨_ | +| **foundationdb.processes_per_role.ratekeeper**
(gauge) |
_process로 표시됨_ | +| **foundationdb.processes_per_role.resolver**
(gauge) |
_process로 표시됨_ | +| **foundationdb.processes_per_role.storage**
(gauge) |
_process로 표시됨_ | +| **foundationdb.qos.batch_transactions_per_second_limit**
(gauge) |
_transaction으로 표시됨_ | +| **foundationdb.qos.released_transactions_per_second**
(gauge) |
_transaction으로 표시됨_ | +| **foundationdb.qos.transactions_per_second_limit**
(gauge) |
_transaction으로 표시됨_ | +| **foundationdb.qos.worst_queue_bytes_log_server**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.qos.worst_queue_bytes_storage_server**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.workload.bytes.read.counter**
(count) |
_byte로 표시됨_ | +| **foundationdb.workload.bytes.read.hz**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.workload.bytes.written.counter**
(count) |
_byte로 표시됨_ | +| **foundationdb.workload.bytes.written.hz**
(gauge) |
_byte로 표시됨_ | +| **foundationdb.workload.keys.read.counter**
(count) |
_key로 표시됨_ | +| **foundationdb.workload.keys.read.hz**
(gauge) |
_key로 표시됨_ | +| **foundationdb.workload.operations.location_requests.counter**
(count) |
_operation으로 표시됨_ | +| **foundationdb.workload.operations.location_requests.hz**
(gauge) |
_operation으로 표시됨_ | +| **foundationdb.workload.operations.low_priority_reads.counter**
(count) |
_operation으로 표시됨_ | +| **foundationdb.workload.operations.low_priority_reads.hz**
(gauge) |
_operation으로 표시됨_ | +| **foundationdb.workload.operations.memory_errors.counter**
(count) |
_operation으로 표시됨_ | +| **foundationdb.workload.operations.memory_errors.hz**
(gauge) |
_operation으로 표시됨_ | +| **foundationdb.workload.operations.read_requests.counter**
(count) |
_operation으로 표시됨_ | +| **foundationdb.workload.operations.read_requests.hz**
(gauge) |
_operation으로 표시됨_ | +| **foundationdb.workload.operations.reads.counter**
(count) |
_operation으로 표시됨_ | +| **foundationdb.workload.operations.reads.hz**
(gauge) |
_operation으로 표시됨_ | +| **foundationdb.workload.operations.writes.counter**
(count) |
_operation으로 표시됨_ | +| **foundationdb.workload.operations.writes.hz**
(gauge) |
_operation으로 표시됨_ | +| **foundationdb.workload.transactions.committed.counter**
(count) |
_transaction으로 표시됨_ | +| **foundationdb.workload.transactions.committed.hz**
(gauge) |
_transaction으로 표시됨_ | +| **foundationdb.workload.transactions.conflicted.counter**
(count) |
_transaction으로 표시됨_ | +| **foundationdb.workload.transactions.conflicted.hz**
(gauge) |
_transaction으로 표시됨_ | +| **foundationdb.workload.transactions.rejected_for_queued_too_long.counter**
(count) |
_transaction으로 표시됨_ | +| **foundationdb.workload.transactions.rejected_for_queued_too_long.hz**
(gauge) |
_transaction으로 표시됨_ | +| **foundationdb.workload.transactions.started.counter**
(count) |
_transaction으로 표시됨_ | +| **foundationdb.workload.transactions.started.hz**
(gauge) |
_transaction으로 표시됨_ | +| **foundationdb.workload.transactions.started_batch_priority.counter**
(count) |
_transaction으로 표시됨_ | +| **foundationdb.workload.transactions.started_batch_priority.hz**
(gauge) |
_transaction으로 표시됨_ | +| **foundationdb.workload.transactions.started_default_priority.counter**
(count) |
_transaction으로 표시됨_ | +| **foundationdb.workload.transactions.started_default_priority.hz**
(gauge) |
_transaction으로 표시됨_ | +| **foundationdb.workload.transactions.started_immediate_priority.counter**
(count) |
_transaction으로 표시됨_ | +| **foundationdb.workload.transactions.started_immediate_priority.hz**
(gauge) |
_transaction으로 표시됨_ | + +### 서비스 점검 + +**foundationdb.check** + +클러스터 상태를 조회하는 동안 오류가 발생하면 critical을 반환하고, 프로세스 상태가 저하된 경우 warning을 반환하며, 그렇지 않으면 ok를 반환합니다. + +_Statuses: ok, warning, critical_ + +### 이벤트 + +FoundationDB 점검은 이벤트를 포함하지 않습니다. + +## 트러블슈팅 + +도움이 필요하세요? [Datadog 지원 팀](https://docs.datadoghq.com/help/)에 문의하세요. \ No newline at end of file diff --git a/content/ko/integrations/gitlab.md b/content/ko/integrations/gitlab.md index 70f72ae22d8..70432db7e8e 100644 --- a/content/ko/integrations/gitlab.md +++ b/content/ko/integrations/gitlab.md @@ -1,34 +1,5 @@ --- app_id: gitlab -app_uuid: 3d165411-7734-4f72-b39a-f222add296b2 -assets: - dashboards: - Gitlab Overview: assets/dashboards/overview.json - integration: - auto_install: true - configuration: - spec: assets/configuration/spec.yaml - events: - creates_events: false - metrics: - check: - - gitlab.process_max_fds - - gitlab.ruby.process_start_time_seconds - metadata_path: metadata.csv - prefix: gitlab. - process_signatures: - - gitlab-kas - - gitlab-workhorse - - gitlab-ctl - service_checks: - metadata_path: assets/service_checks.json - source_type_id: 10026 - source_type_name: Gitlab -author: - homepage: https://www.datadoghq.com - name: Datadog - sales_email: info@datadoghq.com - support_email: help@datadoghq.com categories: - collaboration - developer tools @@ -36,72 +7,40 @@ categories: - log collection - source control custom_kind: 통합 -dependencies: -- https://github.com/DataDog/integrations-core/blob/master/gitlab/README.md -display_on_public_website: true -draft: false -git_integration_title: gitlab -integration_id: gitlab -integration_title: GitLab -integration_version: 9.1.0 -is_public: true -manifest_version: 2.0.0 -name: gitlab -public_title: GitLab -short_description: Datadog로 GitLab 메트릭 모두 추적하기. +description: Datadog으로 모든 GitLab 메트릭을 추적하세요. +integration_version: 10.0.0 +media: [] supported_os: - linux - windows - macos -tile: - changelog: CHANGELOG.md - classifier_tags: - - Category::협업 - - Category::개발자 도구 - - Category::문제 추적 - - Category::로그 수집 - - Category::소스 컨트롤 - - Supported OS::Linux - - Supported OS::Windows - - Supported OS::macOS - - Submitted Data Type::Metrics - - Submitted Data Type::Logs - - Offering::통합 - configuration: README.md#Setup - description: Datadog로 GitLab 메트릭 모두 추적하기. - media: [] - overview: README.md#Overview - support: README.md#Support - title: GitLab +title: GitLab --- - - - - ## 개요 이 통합으로 다음을 할 수 있습니다. - Prometheus를 통해 GitLab과 Gitaly에서 수집한 메트릭 가시화 및 모니터링 -자세한 정보는 [Prometheus와 함께 사용하는 GitLab 모니터링][1]을 참고하세요. +자세한 내용은 [Prometheus를 사용하여 GitLab 모니터링](https://docs.gitlab.com/ee/administration/monitoring/prometheus)을 참고하세요. -GitLab 파이프라인을 더 깊게 모니터링하려면 [CI Pipeline Visibility][2]를 참고하세요. CI Pipeline Visibility를 사용하면 사용자 워크플로우를 세부화하여 인사이트를 얻을 수 있고 상세한 Git 메타데이터를 얻을 수 있으며 시간 흐름에 따른 파이프라인 성능을 추적할 수 있습니다. +GitLab 파이프라인을 보다 상세하게 모니터링하려면 [CI Pipeline Visibility](https://app.datadoghq.com/ci/getting-started)을 참고하세요. CI Pipeline Visibility는 사용자 워크플로에 관한 세부적인 인사이트를 제공하고, 상세 Git 메타데이터에 접근할 수 있도록 하며, 시간 경과에 따른 파이프라인 성능을 추적합니다. ## 설정 -이 OpenMetrics 기반 통합에는 최신 모드(활성화하려면 `openmetrics_endpoint`가 대상 엔드포인트를 가리키도록 설정)와 레거시 모드(활성화 하려면 `prometheus_url`를 대신 설정)가 있습니다. Datadog에서는 최신 모드를 활성화해 최신 기능을 사용할 것을 권장합니다. 자세한 내용을 확인하려면 [OpenMetrics 기반 통합의 최신 및 레거시 버전 관리][3]를 참고하세요. +이 OpenMetrics 기반 통합에는 최신 모드(`openmetrics_endpoint`를 대상 엔드포인트를 참조하도록 설정하여 활성화)와 레거시 모드(대신 `prometheus_url`을 설정하여 활성화)가 있습니다. 최신 기능을 모두 사용하려면 최신 모드를 활성화하세요. 자세한 내용은 [OpenMetrics 기반 통합을 위한 최신 및 레거시 버전 관리](https://docs.datadoghq.com/integrations/guide/versions-for-openmetrics-based-integrations)를 참고하세요. -`[OpenMetricsV1]`나 `[OpenMetricsV2]`으로 표시된 메트릭은 GitLab 통합의 해당 모드를 사용해서만 사용할 수 있습니다. 다른 메트릭은 전부 두 모드를 함께 사용해 수집됩니다. +`[OpenMetricsV1]` 또는 `[OpenMetricsV2]`로 표시된 메트릭은 해당 GitLab 통합 모드를 사용해야만 얻을 수 있습니다. 그 외의 모든 메트릭은 두 모드 모두에서 수집됩니다. ### 설치 -GitLab 점검은 [Datadog 에이전트][2] 패키지에 포함되어 있으므로 GitLab 서버에 추가 설치할 필요가 없습니다. +GitLab 점검 기능은 [Datadog Agent](https://app.datadoghq.com/account/settings/agent/latest) 패키지에 포함되어 있으므로 GitLab 서버에 별도로 설치할 필요가 없습니다. -### 구성 +### 설정 {{< tabs >}} -{{% tab "호스트" %}} + +{{% tab "Host" %}} #### 호스트 @@ -109,29 +48,30 @@ GitLab 점검은 [Datadog 에이전트][2] 패키지에 포함되어 있으므 ##### 메트릭 수집 -1. GitLab의 [엔드포인트][2]를 가리키려면 [에이전트 구성 설정 디렉터리][1] 루트에 있는 `conf.d/` 폴더에서 `consul.d/conf.yaml` 파일을 편집하세요. -최신 모드에서 사용 가능한 모든 설정 옵션을 보려면 [샘플 gitlab.d/conf.yaml][3]을 참고하세요. 이 통합을 이미 설치한 경우에는 [레거시 예시][4]를 참고하세요. +1. [Agent 구성 디렉터리](https://docs.datadoghq.com/agent/guide/agent-configuration-files/#agent-configuration-directory)의 루트 `conf.d/` 폴더에 있는 `gitlab.d/conf.yaml` 파일을 편집하여 GitLab 메트릭 [엔드포인트](https://docs.gitlab.com/ee/administration/monitoring/prometheus/gitlab_metrics.html#collecting-the-metrics)를 참조하도록 합니다. + 사용 가능한 모든 구성 옵션은 [샘플 gitlab.d/conf.yaml](https://github.com/DataDog/integrations-core/blob/master/gitlab/datadog_checks/gitlab/data/conf.yaml.example)을 참고하세요. 이전에 이 통합을 구현한 경우 [레거시 예제](https://github.com/DataDog/integrations-core/blob/7.43.x/gitlab/datadog_checks/gitlab/data/conf.yaml.example)를 참고하세요. + +1. GitLab 설정 페이지에서 `Enable Prometheus Metrics` 옵션이 활성화되어 있는지 확인하세요(관리자 액세스 필요). 메트릭 수집 활성화 방법에 관한 자세한 내용은 [GitLab Prometheus 메트릭](https://docs.gitlab.com/ee/administration/monitoring/prometheus/gitlab_metrics.html)을 참고하세요. -2. GitLab 설정 페이지에서 `Enable Prometheus Metrics` 옵션이 활성화되어 있어야 합니다(관리자 접근 권한 필요). 메트릭 수집을 활성화하는 방법에 관한 자세한 내용은 [GitLab Prometheus 메트릭][5]을 참고하세요. +1. 내 `/etc/gitlab/gitlab.rb`를 업데이트해 모니터링 엔드포인트에 접근할 수 있도록 허용하세요. -3. 내 `/etc/gitlab/gitlab.rb`를 업데이트해 모니터링 엔드포인트에 접근할 수 있도록 허용하세요. + ``` + gitlab_rails['monitoring_whitelist'] = ['127.0.0.0/8', '192.168.0.1'] + ``` - ``` - gitlab_rails['monitoring_whitelist'] = ['127.0.0.0/8', '192.168.0.1'] - ``` - **참고**: GitLab을 저장하고 변경 사항을 확인하세요. + **참고** 변경 사항을 확인하려면 저장 후 GitLab을 다시 시작하세요. -4. [에이전트를 재시작하세요][6]. +1. [Agent를 다시 시작합니다](https://docs.datadoghq.com/agent/guide/agent-commands/#start-stop-and-restart-the-agent). ##### 로그 수집 -1. Datadog 에이전트에서 로그 수집은 기본적으로 사용하지 않도록 설정되어 있습니다. `datadog.yaml`파일에서 로그 수집을 사용하도록 설정합니다. +1. 로그 수집은 Datadog 에이전트에서 기본적으로 비활성화되어 있습니다. `datadog.yaml` 파일에서 활성화합니다. ```yaml logs_enabled: true ``` -2. 그 후 하단에 있는 `logs` 줄의 주석 처리를 제거하여 `envoy.d/conf.yaml`을 편집하세요. GitLab 로그 파일의 올바른 경로로 로그 `path`를 업데이트합니다. +1. 그 후 하단에 있는 `logs` 줄의 주석 처리를 제거하여 `envoy.d/conf.yaml`을 편집하세요. GitLab 로그 파일의 올바른 경로로 로그 `path`를 업데이트합니다. ```yaml logs: @@ -149,20 +89,15 @@ GitLab 점검은 [Datadog 에이전트][2] 패키지에 포함되어 있으므 source: gitlab ``` -3. [에이전트를 재시작합니다][6]. +1. [Agent를 다시 시작합니다](https://docs.datadoghq.com/agent/guide/agent-commands/#start-stop-and-restart-the-agent). -[1]: https://docs.datadoghq.com/ko/agent/guide/agent-configuration-files/#agent-configuration-directory -[2]: https://docs.gitlab.com/ee/administration/monitoring/prometheus/gitlab_metrics.html#collecting-the-metrics -[3]: https://github.com/DataDog/integrations-core/blob/master/gitlab/datadog_checks/gitlab/data/conf.yaml.example -[4]: https://github.com/DataDog/integrations-core/blob/7.43.x/gitlab/datadog_checks/gitlab/data/conf.yaml.example -[5]: https://docs.gitlab.com/ee/administration/monitoring/prometheus/gitlab_metrics.html -[6]: https://docs.datadoghq.com/ko/agent/guide/agent-commands/#start-stop-and-restart-the-agent {{% /tab %}} -{{% tab "컨테이너화된 환경" %}} + +{{% tab "컨테이너화" %}} #### 컨테이너화된 환경 -컨테이너화된 환경의 경우 [자동탐지 통합 템플릿][1]에 다음 파라미터를 적용하는 방법이 안내되어 있습니다. +컨테이너화된 환경의 경우 [Autodiscovery 통합 템플릿](https://docs.datadoghq.com/agent/kubernetes/integrations/)에 아래 파라미터를 적용하는 방법이 안내되어 있습니다. ##### 메트릭 수집 @@ -174,132 +109,698 @@ GitLab 점검은 [Datadog 에이전트][2] 패키지에 포함되어 있으므 ##### 로그 수집 -Datadog 에이전트에서 로그 수집은 기본값으로 비활성화되어 있습니다. 이를 활성화하려면 [쿠버네티스 로그 수집][2]을 참고하세요. +Datadog Agent에서는 로그 수집 기능이 기본적으로 비활성화되어 있습니다. 활성화하려면 [Kubernetes 로그 수집](https://docs.datadoghq.com/agent/kubernetes/log/)을 참고하세요. | 파라미터 | 값 | | -------------- | ------------------------------------------- | | `` | `{"source": "gitlab", "service": "gitlab"}` | -[1]: https://docs.datadoghq.com/ko/agent/kubernetes/integrations/ -[2]: https://docs.datadoghq.com/ko/agent/kubernetes/log/ {{% /tab %}} + {{< /tabs >}} ### 검증 -[에이전트 상태 하위 명령을 실행][5]하고 점검 섹션 아래에서 `gitlab`을 찾으세요. +[Agent 상태 하위 명령을 실행하고](https://docs.datadoghq.com/agent/guide/agent-commands/#agent-status-and-information) Checks 섹션에서 `gitlab`을 찾습니다. ## 수집한 데이터 -### 메트릭 -{{< get-metrics-from-git "gitlab" >}} - +### Metrics + +| | | +| --- | --- | +| **gitlab.action_cable.active_connections**
(gauge) | 현재 연결된 ActionCable WS 클라이언트 수
_connection으로 표시됨_ | +| **gitlab.auto_devops_pipelines_completed.count**
(count) | \[OpenMetrics V2\] 완료된 Auto DevOps 파이프라인의 카운터(상태별로 라벨링)| +| **gitlab.auto_devops_pipelines_completed_total**
(count) | \[OpenMetrics V1\] 완료된 Auto DevOps 파이프라인의 카운터(상태별로 라벨링)| +| **gitlab.banzai.cached_render_real_duration_seconds.bucket**
(count) | \[OpenMetrics V2\] 캐시된 출력이 있을 때 Markdown을 HTML로 렌더링하는 데 걸리는 시간
_second로 표시됨_ | +| **gitlab.banzai.cached_render_real_duration_seconds.count**
(count) | 캐시된 출력이 있을 때 Markdown을 HTML로 렌더링하는 데 걸리는 시간| +| **gitlab.banzai.cached_render_real_duration_seconds.sum**
(count) | 캐시된 출력이 있을 때 Markdown을 HTML로 렌더링하는 데 걸리는 시간의 합계
_second로 표시됨_ | +| **gitlab.banzai.cacheless_render_real_duration_seconds.bucket**
(count) | \[OpenMetrics V2\] 캐시된 출력이 없을 때 Markdown을 HTML로 렌더링하는 데 걸리는 시간
_second로 표시됨_ | +| **gitlab.banzai.cacheless_render_real_duration_seconds.count**
(count) | 캐시된 출력이 없을 때 Markdown을 HTML로 렌더링하는 데 걸리는 시간 측정| +| **gitlab.banzai.cacheless_render_real_duration_seconds.sum**
(count) | 캐시된 출력이 없을 때 Markdown을 HTML로 렌더링하는 데 걸리는 시간의 합계
_second로 표시됨_ | +| **gitlab.cache.misses.count**
(count) | \[OpenMetrics V2\] 캐시 읽기 미스
_second로 표시됨_ | +| **gitlab.cache.misses_total**
(count) | \[OpenMetrics V1\] 캐시 읽기 미스
_second로 표시됨_ | +| **gitlab.cache.operation_duration_seconds.bucket**
(count) | \[OpenMetrics V2\] 캐시 접근 시간
_second로 표시됨_ | +| **gitlab.cache.operation_duration_seconds.count**
(count) | 캐시 접근 시간 측정| +| **gitlab.cache.operation_duration_seconds.sum**
(count) | 캐시 접근 시간 합계
_second로 표시됨_ | +| **gitlab.cache_operations.count**
(count) | \[OpenMetrics V2\] 컨트롤러/액션별 캐시 작업 횟수| +| **gitlab.cache_operations_total**
(count) | \[OpenMetrics V1\] 컨트롤러/액션별 캐시 작업 횟수| +| **gitlab.ci_pipeline_creation_duration_seconds.bucket**
(count) | \[OpenMetrics V2\] CI/CD 파이프라인을 생성하는 데 걸리는 시간(초)| +| **gitlab.ci_pipeline_creation_duration_seconds.count**
(count) | CI/CD 파이프라인을 생성하는 데 걸리는 시간(초)| +| **gitlab.ci_pipeline_creation_duration_seconds.sum**
(count) | CI/CD 파이프라인을 생성하는 데 걸리는 시간의 합계
_second로 표시됨_ | +| **gitlab.ci_pipeline_size_builds.bucket**
(count) | \[OpenMetrics V2\] 파이프라인 소스별로 그룹화된 파이프라인 내 전체 빌드 수| +| **gitlab.ci_pipeline_size_builds.count**
(count) | 파이프라인 소스별로 그룹화된 파이프라인 내 전체 빌드 수| +| **gitlab.ci_pipeline_size_builds.sum**
(count) | 파이프라인 소스별로 그룹화된 파이프라인 내 전체 빌드 수의 합계| +| **gitlab.database.connection_pool_busy**
(gauge) | 소유자가 활성 상태에서 사용 중인 연결
_connection으로 표시됨_ | +| **gitlab.database.connection_pool_connections**
(gauge) | 현재 풀에 있는 연결
_connection으로 표시됨_ | +| **gitlab.database.connection_pool_dead**
(gauge) | 소유자가 비활성 상태에서 사용 중인 연결
_connection으로 표시됨_ | +| **gitlab.database.connection_pool_idle**
(gauge) | 미사용 연결
_connection으로 표시됨_ | +| **gitlab.database.connection_pool_size**
(gauge) | 연결 풀 전체 용량
_connection으로 표시됨_ | +| **gitlab.database.connection_pool_waiting**
(gauge) | 현재 이 대기열에서 대기 중인 스레드
_thread로 표시됨_ | +| **gitlab.database.transaction_seconds.bucket**
(count) | \[OpenMetrics V2\] 데이터베이스 트랜잭션에 소요된 시간(초)
_second로 표시됨_ | +| **gitlab.database.transaction_seconds.count**
(count) | 데이터베이스 트랜잭션에 소요된 시간(초)| +| **gitlab.database.transaction_seconds.sum**
(count) | 데이터베이스 트랜잭션에 소요된 총 시간(초)
_second로 표시됨_ | +| **gitlab.db_load_balancing_hosts**
(gauge) | 현재 로드 밸런싱 호스트 수
_host로 표시됨_ | +| **gitlab.db_partitions_missing**
(gauge) | 현재 예상되지만 존재하지 않는 데이터베이스 파티션 수 | +| **gitlab.db_partitions_present**
(gauge) | 존재하는 데이터베이스 파티션 수| +| **gitlab.failed_login_captcha.count**
(count) | \[OpenMetrics V2\] 로그인 중 CAPTCHA 실패 시도 횟수| +| **gitlab.failed_login_captcha_total**
(count) | \[OpenMetrics V1\] 로그인 중 CAPTCHA 실패 시도 횟수| +| **gitlab.geo.attachments**
(gauge) | 프라이머리에 있는 첨부 파일 총 개수| +| **gitlab.geo.attachments_failed**
(gauge) | 세컨더리에서 동기화에 실패한 첨부 파일 수| +| **gitlab.geo.attachments_synced**
(gauge) | 세컨더리에서 동기화된 첨부 파일 수| +| **gitlab.geo.attachments_synced_missing_on_primary**
(gauge) | 프라이머리에서 파일이 누락되어 동기화된 것으로 표시된 첨부 파일 수| +| **gitlab.geo.cursor_last_event_id**
(gauge) | 세컨더리에서 처리된 이벤트 로그의 마지막 데이터베이스 ID| +| **gitlab.geo.cursor_last_event_timestamp**
(gauge) | 세컨더리에서 처리된 이벤트 로그의 마지막 UNIX 타임스탬프| +| **gitlab.geo.db_replication_lag_seconds**
(gauge) | 데이터베이스 복제 지연 시간(초)
_second로 표시됨_ | +| **gitlab.geo.group.wiki.repositories**
(gauge) | 프라이머리에 있는 그룹 위키 수(13.10)| +| **gitlab.geo.group.wiki.repositories_checksum_failed**
(gauge) | 프라이머리에서 체크섬 계산에 실패한 그룹 위키 수(13.10)| +| **gitlab.geo.group.wiki.repositories_checksum_total**
(gauge) | 프라이머리에서 체크섬이 필요한 그룹 위키 수(16.3)| +| **gitlab.geo.group.wiki.repositories_checksummed**
(gauge) | 프라이머리에서 체크섬 계산에 성공한 그룹 위키 수(13.10)| +| **gitlab.geo.group.wiki.repositories_failed**
(gauge) | 세컨더리에서 동기화 가능한 그룹 위키 중 실패한 위키 수(13.10)| +| **gitlab.geo.group.wiki.repositories_registry**
(gauge) | 레지스트리에 등록된 그룹 위키 수(13.10)| +| **gitlab.geo.group.wiki.repositories_synced**
(gauge) | 세컨더리에 동기화 가능한 그룹 위키 중 동기화된 위키 수(13.10)| +| **gitlab.geo.group.wiki.repositories_verification_failed**
(gauge) | 세컨더리에서 인증에 실패한 그룹 위키 수(16.3)| +| **gitlab.geo.group.wiki.repositories_verification_total**
(gauge) | 세컨더리에서 인증에 실패한 그룹 위키 수(16.3)| +| **gitlab.geo.group.wiki.repositories_verified**
(gauge) | 세컨더리에서 성공적으로 인증된 그룹 위키 수(16.3)| +| **gitlab.geo.job_artifacts_synced_missing_on_primary**
(gauge) | 프라이머리에서 파일이 누락되어 동기화된 것으로 표시된 작업 아티팩트 수| +| **gitlab.geo.last_event_id**
(gauge) | 프라이머리의 최신 이벤트 로그 항목 데이터베이스 ID| +| **gitlab.geo.last_event_timestamp**
(gauge) | 프라이머리 최신 이벤트 로그 항목의 UNIX 타임스탬프| +| **gitlab.geo.last_successful_status_check_timestamp**
(gauge) | 상태가 성공적으로 업데이트된 마지막 타임스탬프| +| **gitlab.geo.lfs_objects**
(gauge) | 프라이머리에서 사용 가능한 LFS 객체의 총 개수| +| **gitlab.geo.lfs_objects_failed**
(gauge) | 세컨더리에서 동기화에 실패한 LFS 객체의 수| +| **gitlab.geo.lfs_objects_synced**
(gauge) | 세컨더리에서 동기화된 LFS 객체 수| +| **gitlab.geo.lfs_objects_synced_missing_on_primary**
(gauge) | 프라이머리에서 파일이 누락되어 동기화된 것으로 표시된 LFS 객체 수| +| **gitlab.geo.merge_request_diffs**
(gauge) | 프라이머리에서 병합 요청 diff 수| +| **gitlab.geo.merge_request_diffs_checksum_failed**
(gauge) | 프라이머리에서 체크섬 계산에 실패한 병합 요청 diff 수| +| **gitlab.geo.merge_request_diffs_checksummed**
(gauge) | 프라이머리에서 체크섬이 계산된 병합 요청 diff 수| +| **gitlab.geo.merge_request_diffs_failed**
(gauge) | 세컨더리에서 동기화 가능한 병합 요청 diff 중 동기화에 실패한 수| +| **gitlab.geo.merge_request_diffs_registry**
(gauge) | 레지스트리에 있는 병합 요청 diff 수| +| **gitlab.geo.merge_request_diffs_synced**
(gauge) | 세컨더리에서 동기화 가능한 병합 요청 diff 중 동기화된 수| +| **gitlab.geo.package_files**
(gauge) | 프라이머리에 있는 패키지 파일 수| +| **gitlab.geo.package_files_checksum_failed**
(gauge) | 프라이머리에서 체크섬 계산에 실패한 패키지 파일 수| +| **gitlab.geo.package_files_checksummed**
(gauge) | 프라이머리에서 체크섬이 계산된 패키지 파일 수| +| **gitlab.geo.package_files_failed**
(gauge) | 세컨더리에서 동기화 가능한 패키지 파일 중 동기화에 실패한 수| +| **gitlab.geo.package_files_registry**
(gauge) | 레지스트리에 있는 패키지 파일 수| +| **gitlab.geo.package_files_synced**
(gauge) | 세컨더리에서 동기화 가능한 패키지 파일 중 동기화된 수| +| **gitlab.geo.project.repositories**
(gauge) | 프라이머리에서 프로젝트 리포지토리 수(16.2)| +| **gitlab.geo.project.repositories_checksum_failed**
(gauge) | 프라이머리에서 체크섬 계산에 실패한 프로젝트 리포지토리 수(16.2)| +| **gitlab.geo.project.repositories_checksum_total**
(gauge) | 프라이머리에서 체크섬이 필요한 프로젝트 리포지토리 수(16.2)| +| **gitlab.geo.project.repositories_checksummed**
(gauge) | 프라이머리에서 체크섬을 성공적으로 계산한 프로젝트 리포지토리 수(16.2)| +| **gitlab.geo.project.repositories_failed**
(gauge) | 세컨더리에서 동기화 가능한 프로젝트 리포지토리 중 실패한 수(16.2)| +| **gitlab.geo.project.repositories_registry**
(gauge) | 레지스트리에 등록된 프로젝트 리포지토리 수(16.2)| +| **gitlab.geo.project.repositories_synced**
(gauge) | 세컨더리에서 동기화 가능한 프로젝트 리포지토리 중 동기화된 수(16.2)| +| **gitlab.geo.project.repositories_verification_failed**
(gauge) | 세컨더리에서 인증에 실패한 프로젝트 리포지토리 수(16.2)| +| **gitlab.geo.project.repositories_verification_total**
(gauge) | 세컨더리에 인증을 시도할 프로젝트 리포지토리 수(16.2)| +| **gitlab.geo.project.repositories_verified**
(gauge) | 세컨더리에서 성공적으로 인증된 프로젝트 리포지토리 수(16.2)| +| **gitlab.geo.project.wiki.repositories**
(gauge) | 프라이머리에 있는 프로젝트 위키 리포지토리 수(15.10)| +| **gitlab.geo.project.wiki.repositories_checksum_failed**
(gauge) | 프라이머리에서 체크섬 계산에 실패한 프로젝트 위키 리포지토리 수(15.10)| +| **gitlab.geo.project.wiki.repositories_checksum_total**
(gauge) | 프라이머리에서 체크섬을 계산해야 하는 프로젝트 위키 리포지토리 수(15.10)| +| **gitlab.geo.project.wiki.repositories_checksummed**
(gauge) | 프라이머리에서 체크섬을 성공적으로 계산한 프로젝트 위키 리포지토리 수(15.10)| +| **gitlab.geo.project.wiki.repositories_failed**
(gauge) | 세컨더리에서 동기화 가능한 프로젝트 위키 리포지토리 중 동기화에 실패한 수(15.10)| +| **gitlab.geo.project.wiki.repositories_registry**
(gauge) | 레지스트리에 등록된 프로젝트 위키 리포지토리 수(15.10)| +| **gitlab.geo.project.wiki.repositories_synced**
(gauge) | 세컨더리에서 동기화 가능한 프로젝트 위키 리포지토리 중 동기화된 수(15.10)| +| **gitlab.geo.project.wiki.repositories_verification_failed**
(gauge) | 세컨더리에서 인증에 실패한 프로젝트 위키 리포지토리 수(15.10)| +| **gitlab.geo.project.wiki.repositories_verification_total**
(gauge) | 세컨더리에서 인증을 시도할 프로젝트 위키 리포지토리 수(15.10)| +| **gitlab.geo.project.wiki.repositories_verified**
(gauge) | 세컨더리에서 성공적으로 인증된 프로젝트 위키 리포지토리 수(15.10)| +| **gitlab.geo.repositories**
(gauge) | 프라이머리에서 사용 가능한 리포지토리 총 개수| +| **gitlab.geo.repositories_checked_count**
(gauge) | git fsck를 통해 확인된 리포지토리 수| +| **gitlab.geo.repositories_checked_failed_count**
(gauge) | git fsck에서 오류가 발생한 리포지토리 수| +| **gitlab.geo.repositories_checksum_failed_count**
(gauge) | 프라이머리에서 체크섬 계산에 실패한 리포지토리 수| +| **gitlab.geo.repositories_checksum_mismatch_count**
(gauge) | 세컨더리에서 체크섬이 일치하지 않는 리포지토리 수| +| **gitlab.geo.repositories_checksummed_count**
(gauge) | 프라이머리에서 체크섬이 계산된 리포지토리 수| +| **gitlab.geo.repositories_failed**
(gauge) | 세컨더리에서 동기화에 실패한 리포지토리 수| +| **gitlab.geo.repositories_retrying_verification_count**
(gauge) | 세컨더리에서 Geo가 적극적으로 수정하려고 시도 중인 리포지토리 인증 실패 수| +| **gitlab.geo.repositories_synced**
(gauge) | 세컨더리에 동기화된 리포지토리 수| +| **gitlab.geo.repositories_verification_failed_count**
(gauge) | 세컨더리에서 인증에 실패한 리포지토리 수| +| **gitlab.geo.repositories_verified_count**
(gauge) | 세컨더리에서 인증된 리포지토리 수| +| **gitlab.geo.status_failed.count**
(count) | \[OpenMetrics V2\] Geo Node에서 상태를 가져오는 데 실패한 횟수| +| **gitlab.geo.status_failed_total**
(count) | \[OpenMetrics V1\] Geo Node에서 상태를 가져오는 데 실패한 횟수| +| **gitlab.geo.terraform_states**
(gauge) | 프라이머리에 있는 Terraform 상태 수| +| **gitlab.geo.terraform_states_checksum_failed**
(gauge) | 프라이머리에서 체크섬 계산에 실패한 Terraform 상태 수| +| **gitlab.geo.terraform_states_checksummed**
(gauge) | 프라이머리에서 체크섬이 계산된 Terraform 상태 수| +| **gitlab.geo.terraform_states_failed**
(gauge) | 세컨더리에서 동기화에 실패한 Terraform 상태 수| +| **gitlab.geo.terraform_states_registry**
(gauge) | 레지스트리에 등록된 Terraform 상태 수| +| **gitlab.geo.terraform_states_synced**
(gauge) | 세컨더리에서 동기화 가능한 Terraform 상태 중 동기화된 수| +| **gitlab.geo.wikis_checksum_failed_count**
(gauge) | 프라이머리에서 체크섬 계산에 실패한 위키 수| +| **gitlab.geo.wikis_checksum_mismatch_count**
(gauge) | 세컨더리에서 체크섬이 일치하지 않는 위키 수| +| **gitlab.geo.wikis_checksummed_count**
(gauge) | 프라이머리에서 체크섬이 계산된 위키 수| +| **gitlab.geo.wikis_retrying_verification_count**
(gauge) | 세컨더리에서 Geo가 적극적으로 수정하려고 시도하는 위키 인증 실패 수| +| **gitlab.geo.wikis_verification_failed_count**
(gauge) | 세컨더리에서 인증에 실패한 위키 수| +| **gitlab.geo.wikis_verified_count**
(gauge) | 세컨더리에서 인증된 위키 수| +| **gitlab.gitaly.cacheinvalidator_rpc.count**
(count) | \[OpenMetrics V2\] 캐시 무효화기에서 발생한 RPC 총 횟수.| +| **gitlab.gitaly.catfile_cache_members**
(gauge) | \[OpenMetrics V2\] 프로세스 유형별 catfile 캐시 멤버 측정.| +| **gitlab.gitaly.catfile_processes**
(gauge) | \[OpenMetrics V2\] .| +| **gitlab.gitaly.command.context_switches.count**
(count) | \[OpenMetrics V2\] 쉘 아웃 중애 실행된 컨텍스트 스위치 합계.| +| **gitlab.gitaly.command.cpu_seconds.count**
(count) | \[OpenMetrics V2\] 쉘 아웃에 소요된 CPU 시간 합계.| +| **gitlab.gitaly.command.major_page_faults.count**
(count) | \[OpenMetrics V2\] 쉘 아웃 중에 발생한 주요 페이지 오류 합계.| +| **gitlab.gitaly.command.minor_page_faults.count**
(count) | \[OpenMetrics V2\] 쉘 아웃 중에 발생한 경미한 페이지 오류 합계.| +| **gitlab.gitaly.command.real_seconds.count**
(count) | \[OpenMetrics V2\] 쉘 아웃에 걸린 실제 소요 시간 합계.| +| **gitlab.gitaly.command.signals_received.count**
(count) | \[OpenMetrics V2\] 쉘 아웃에 걸린 실제 소요 시간 합계.| +| **gitlab.gitaly.command.spawn_token_acquiring_seconds.count**
(count) | \[OpenMetrics V2\] 스폰 토큰을 기다리는 데 소요된 총 시간.
_second로 표시됨_ | +| **gitlab.gitaly.commands_running**
(gauge) | \[OpenMetrics V2\] 현재 실행 중인 프로세스 총 개수.| +| **gitlab.gitaly.concurrency_limiting_acquiring_seconds.bucket**
(count) | \[OpenMetrics V2\] 속도 제한이 적용된 호출 시간의 히스토그램 버킷.
_second로 표시됨_ | +| **gitlab.gitaly.concurrency_limiting_acquiring_seconds.count**
(count) | \[OpenMetrics V2\] 속도 제한이 적용된 호출 시간.
_second로 표시됨_ | +| **gitlab.gitaly.concurrency_limiting_acquiring_seconds.sum**
(count) | \[OpenMetrics V2\] 속도 제한이 적용된 호출 시간 합계.
_second로 표시됨_ | +| **gitlab.gitaly.concurrency_limiting_in_progress**
(gauge) | \[OpenMetrics V2\] 동시에 진행 중인 호출 수를 나타내는 게이지.| +| **gitlab.gitaly.concurrency_limiting_queued**
(gauge) | \[OpenMetrics V2\] 대기 중인 호출 수를 나타내는 게이지.| +| **gitlab.gitaly.diskcache.bytes_fetched.count**
(count) | \[OpenMetrics V2\] 디스크 캐시에서 가져온 바이트 총량.
_byte로 표시됨_ | +| **gitlab.gitaly.diskcache.bytes_loser.count**
(count) | \[OpenMetrics V2\] 쓰기 손실이 발생한 디스크 캐시 바이트 총량.
_byte로 표시됨_ | +| **gitlab.gitaly.diskcache.bytes_stored.count**
(count) | \[OpenMetrics V2\] 디스크 캐시에 저장된 바이트 총량.
_byte로 표시됨_ | +| **gitlab.gitaly.diskcache.miss.count**
(count) | \[OpenMetrics V2\]디스크 캐시 미스 총 횟수.| +| **gitlab.gitaly.diskcache.requests.count**
(count) | \[OpenMetrics V2\] 디스크 캐시 요청 총 횟수.| +| **gitlab.gitaly.diskcache.walker_empty_dir.count**
(count) | \[OpenMetrics V2\] 발견된 빈 디렉터리의 총 개수.| +| **gitlab.gitaly.diskcache.walker_empty_dir_removal.count**
(count) | \[OpenMetrics V2\] 삭제된 빈 디렉터리의 총 개수.| +| **gitlab.gitaly.diskcache.walker_error.count**
(count) | \[OpenMetrics V2\] 디스크 캐시 파일 시스템 탐색 중 발생한 총 이벤트 수.| +| **gitlab.gitaly.diskcache.walker_removal.count**
(count) | \[OpenMetrics V2\] 트랜잭션 서비스 호출과 응답 수신 사이의 지연 시간.| +| **gitlab.gitaly.go.gc_duration_seconds.count**
(count) | \[OpenMetrics V2\] 가비지 컬렉션 주기 동안의 일시 중지 시간 요약.
_second로 표시됨_ | +| **gitlab.gitaly.go.gc_duration_seconds.quantile**
(gauge) | \[OpenMetrics V2\] 가비지 컬렉션 주기 동안의 일시 중지 시간 요약.
_second로 표시됨_ | +| **gitlab.gitaly.go.gc_duration_seconds.sum**
(count) | \[OpenMetrics V2\] 가비지 컬렉션 주기 동안의 일시 중지 시간 요약.
_second로 표시됨_ | +| **gitlab.gitaly.go.goroutines**
(gauge) | \[OpenMetrics V2\] 현재 존재하는 고루틴 수| +| **gitlab.gitaly.go.info**
(gauge) | \[OpenMetrics V2\] Go 환경에 관한 정보.| +| **gitlab.gitaly.go.memstats_alloc_bytes**
(gauge) | \[OpenMetrics V2\] 현재 사용 중인 할당된 바이트 수.
_byte로 표시됨_ | +| **gitlab.gitaly.go.memstats_buck_hash_sys_bytes**
(gauge) | \[OpenMetrics V2\] 프로파일링 버킷 해시 테이블에서 사용된 바이트 수.
_byte로 표시됨_ | +| **gitlab.gitaly.go.memstats_frees.count**
(count) | \[OpenMetrics V2\] 총 Free 횟수.| +| **gitlab.gitaly.go.memstats_gc_sys_bytes**
(gauge) | \[OpenMetrics V2\] 가비지 컬렉션 시스템 메타데이터에 사용된 바이트 수.
_byte로 표시됨_ | +| **gitlab.gitaly.go.memstats_heap_alloc_bytes**
(gauge) | \[OpenMetrics V2\] 힙에 할당되어 아직 사용 중인 바이트 수.
_byte로 표시됨_ | +| **gitlab.gitaly.go.memstats_heap_idle_bytes**
(gauge) | \[OpenMetrics V2\] 사용 대기 중인 힙 바이트 수.
_byte로 표시됨_ | +| **gitlab.gitaly.go.memstats_heap_inuse_bytes**
(gauge) | \[OpenMetrics V2\] 사용 중인 힙 바이트 수.
_byte로 표시됨_ | +| **gitlab.gitaly.go.memstats_heap_objects**
(gauge) | \[OpenMetrics V2\] 할당된 객체 수.| +| **gitlab.gitaly.go.memstats_heap_released_bytes**
(gauge) | \[OpenMetrics V2\] OS에 반환된 힙 바이트 수.
_byte로 표시됨_ | +| **gitlab.gitaly.go.memstats_heap_sys_bytes**
(gauge) | \[OpenMetrics V2\] 시스템에서 가져온 힙 바이트 수.
_byte로 표시됨_ | +| **gitlab.gitaly.go.memstats_last_gc_time_seconds**
(gauge) | \[OpenMetrics V2\] 1970년 마지막 가비지 컬렉션 이후 경과된 시간(초)
_second로 표시됨_ | +| **gitlab.gitaly.go.memstats_lookups.count**
(count) | \[OpenMetrics V2\] 포인터 조회 총 횟수.| +| **gitlab.gitaly.go.memstats_mallocs.count**
(count) | \[OpenMetrics V2\] 메모리 할당(malloc) 총 횟수.| +| **gitlab.gitaly.go.memstats_mcache_inuse_bytes**
(gauge) | \[OpenMetrics V2\] mcache 구조체에서 사용 중인 바이트 수.
_byte로 표시됨_ | +| **gitlab.gitaly.go.memstats_mcache_sys_bytes**
(gauge) | \[OpenMetrics V2\] 시스템에서 가져온 mcache 구조체에 사용된 바이트 수.
_byte로 표시됨_ | +| **gitlab.gitaly.go.memstats_mspan_inuse_bytes**
(gauge) | \[OpenMetrics V2\] mspan 구조체에서 사용 중인 바이트 수.
_byte로 표시됨_ | +| **gitlab.gitaly.go.memstats_mspan_sys_bytes**
(gauge) | \[OpenMetrics V2\] 시스템에서 가져온 mspan 구조체에 사용된 바이트 수.
_byte로 표시됨_ | +| **gitlab.gitaly.go.memstats_next_gc_bytes**
(gauge) | \[OpenMetrics V2\] 다음 가비지 컬렉션이 발생할 때의 힙 바이트 수.
_byte로 표시됨_ | +| **gitlab.gitaly.go.memstats_other_sys_bytes**
(gauge) | \[OpenMetrics V2\] 다른 시스템 할당에 사용된 바이트 수.
_byte로 표시됨_ | +| **gitlab.gitaly.go.memstats_stack_inuse_bytes**
(gauge) | \[OpenMetrics V2\] 스택 할당자가 사용 중인 바이트 수.
_byte로 표시됨_ | +| **gitlab.gitaly.go.memstats_stack_sys_bytes**
(gauge) | \[OpenMetrics V2\] 스택 할당자를 위해 시스템에서 얻은 바이트 수.
_byte로 표시됨_ | +| **gitlab.gitaly.go.memstats_sys_bytes**
(gauge) | \[OpenMetrics V2\] 시스템에서 가져온 바이트 수.
_byte로 표시됨_ | +| **gitlab.gitaly.go.threads**
(gauge) | \[OpenMetrics V2\] 생성된 OS 스레드 수.| +| **gitlab.gitaly.grpc_server.handled.count**
(count) | \[OpenMetrics V2\] 서버에서 완료된 총 RPC 횟수(성공 여부와 관계없이).| +| **gitlab.gitaly.grpc_server.handling_seconds.bucket**
(count) | \[OpenMetrics V2\] 서버에서 애플리케이션 레벨로 처리되었던 gRPC 응답 지연 시간의 히스토그램 버킷.
_second로 표시됨_ | +| **gitlab.gitaly.grpc_server.handling_seconds.count**
(count) | \[OpenMetrics V2\] 서버에서 애플리케이션 레벨로 처리된 gRPC 응답 지연 시간.
_second로 표시됨_ | +| **gitlab.gitaly.grpc_server.handling_seconds.sum**
(count) | \[OpenMetrics V2\] 서버에서 애플리케이션 레벨로 처리된 gRPC 응답 지연 시간 합계.
_second로 표시됨_ | +| **gitlab.gitaly.grpc_server.msg_received.count**
(count) | \[OpenMetrics V2\] 서버에서 수신된 RPC 스트림 메시지 총 개수.| +| **gitlab.gitaly.grpc_server.msg_sent.count**
(count) | \[OpenMetrics V2\] 서버에서 전송된 gRPC 스트림 메시지 총 개수.| +| **gitlab.gitaly.grpc_server.started.count**
(count) | \[OpenMetrics V2\] 서버에서 시작된 RPC 총 개수.| +| **gitlab.gitaly.hook_transaction_voting_delay_seconds.bucket**
(count) | \[OpenMetrics V2\] 트랜잭션 서비스 호출과 응답 수신 사이의 지연 시간.
_second로 표시됨_ | +| **gitlab.gitaly.hook_transaction_voting_delay_seconds.count**
(count) | \[OpenMetrics V2\] 트랜잭션 서비스 호출과 응답 수신 사이의 지연 시간.
_second로 표시됨_ | +| **gitlab.gitaly.hook_transaction_voting_delay_seconds.sum**
(count) | \[OpenMetrics V2\] 트랜잭션 서비스 호출과 응답 수신 사이의 지연 시간.
_second로 표시됨_ | +| **gitlab.gitaly.inforef_cache_attempt.count**
(count) | \[OpenMetrics V2\] 캐시에 접근한 smarthttp info-ref RPC 총 개수.| +| **gitlab.gitaly.list_commits_by_oid_request_size.bucket**
(count) | \[OpenMetrics V2\] ListCommitsByOid 요청에서 요청된 커밋 수.| +| **gitlab.gitaly.list_commits_by_oid_request_size.count**
(count) | \[OpenMetrics V2\] ListCommitsByOid 요청에서 요청된 커밋 수.| +| **gitlab.gitaly.list_commits_by_oid_request_size.sum**
(count) | \[OpenMetrics V2\] ListCommitsByOid 요청에서 요청된 커밋 수.| +| **gitlab.gitaly.pack_objects.acquiring_seconds.bucket**
(count) | \[OpenMetrics V2\] 속도 제한이 적용된 시간 호출의 히스토그램 버킷.
_second로 표시됨_ | +| **gitlab.gitaly.pack_objects.acquiring_seconds.count**
(count) | \[OpenMetrics V2\] 속도 제한이 적용된 호출 시간
_second로 표시됨_ | +| **gitlab.gitaly.pack_objects.acquiring_seconds.sum**
(count) | \[OpenMetrics V2\] 속도 제한이 적용된 호출 시간 합계.
_second로 표시됨_ | +| **gitlab.gitaly.pack_objects.generated_bytes.count**
(count) | \[OpenMetrics V2] git-pack-objects를 실행하여 PackObjectsHook에 생성된 바이트 수.
_byte로 표시됨_ | +| **gitlab.gitaly.pack_objects.in_progress**
(gauge) | \[OpenMetrics V2\] 동시에 진행 중인 호출 수| +| **gitlab.gitaly.pack_objects.queued**
(gauge) | \[OpenMetrics V2\] 대기 중인 호출 수를 나타내는 게이지| +| **gitlab.gitaly.pack_objects.served_bytes.count**
(count) | \[OpenMetrics V2\] 클라이언트에게 제공된 git-pack-objects 데이터 바이트 수.
_ byte_로 표시됨_ | +| **gitlab.gitaly.process_cpu_seconds.count**
(count) | \[OpenMetrics V2\] 사용자 및 시스템 CPU 사용 시간(초) 합계.
_second로 표시됨_ | +| **gitlab.gitaly.process_max_fds**
(gauge) | \[OpenMetrics V2\] 열려 있는 파일 디스크립터 최대 개수.| +| **gitlab.gitaly.process_open_fds**
(gauge) | \[OpenMetrics V2\] 열려 있는 파일 디스크립터 수.| +| **gitlab.gitaly.process_resident_memory_bytes**
(gauge) | \[OpenMetrics V2\] 레지던트 메모리 크기(바이트).
_byte로 표시됨_ | +| **gitlab.gitaly.process_start_time_seconds**
(gauge) | \[OpenMetrics V2\] Unix Epoch 이후 프로세스 시작 시간(초).
_second로 표시됨_ | +| **gitlab.gitaly.process_virtual_memory_bytes**
(gauge) | \[OpenMetrics V2\] 가상 메모리 크기(바이트).
_byte로 표시됨_ | +| **gitlab.gitaly.process_virtual_memory_max_bytes**
(gauge) | \[OpenMetrics V2\] 사용 가능한 최대 가상 메모리 용량(바이트).
_byte로 표시됨_ | +| **gitlab.gitaly.promhttp_metric_handler_requests.count**
(count) | \[OpenMetrics V2\] HTTP 상태 코드별 총 스크레이프 수.| +| **gitlab.gitaly.promhttp_metric_handler_requests_in_flight**
(gauge) | \[OpenMetrics V2\] 현재 제공되는 스크레이프 수.| +| **gitlab.gitaly.spawn_timeouts.count**
(count) | \[OpenMetrics V2\] 프로세스 생성 타임아웃 횟수.| +| **gitlab.gitaly.streamcache_sendfile_bytes.count**
(count) | \[OpenMetrics V2\] sendfile을 사용하여 전송된 바이트 수.
_byte로 표시됨_ | +| **gitlab.global_search_awaiting_indexing_queue_size**
(gauge) | 인덱싱이 일시 중지된 동안 Elasticsearch와 동기화될 데이터베이스 업데이트 수| +| **gitlab.global_search_bulk_cron_queue_size**
(gauge) | Elasticsearch와 동기화될 데이터베이스 레코드 수| +| **gitlab.go_gc_duration_seconds**
(gauge) | GC 호출 시간 요약
_request로 표시됨_ | +| **gitlab.go_gc_duration_seconds_count**
(gauge) | GC 호출 시간
_request로 표시됨_ | +| **gitlab.go_gc_duration_seconds_sum**
(count) | GC 호출 시간 합계
_request로 표시됨_ | +| **gitlab.go_goroutines**
(gauge) | 현재 존재하는 고루틴 수
_ request로 표시됨_ | +| **gitlab.go_memstats_alloc_bytes**
(gauge) | 할당되었고, 아직 사용 중인 바이트 수
_byte로 표시됨_ | +| **gitlab.go_memstats_alloc_bytes.count**
(count) | \[OpenMetrics V2\] 할당된 총 바이트 수
_ byte로 표시됨_ | +| **gitlab.go_memstats_alloc_bytes_total**
(count) | \[OpenMetrics V1\] 할당된 총 바이트 수
_byte로 표시됨_ | +| **gitlab.go_memstats_buck_hash_sys_bytes**
(gauge) | 프로파일링 버킷 해시 테이블에서 사용된 바이트 수
_byte로 표시됨_ | +| **gitlab.go_memstats_frees.count**
(count) | \[OpenMetrics V2\] free 총 횟수
_request로 표시됨_ | +| **gitlab.go_memstats_frees_total**
(count) | \[OpenMetrics V1\] free 총 횟수
_request로 표시됨_ | +| **gitlab.go_memstats_gc_cpu_fraction**
(gauge) | 프로그램이 시작된 이후 GC가 사용한 가용 CPU 시간의 비율
_request로 표시됨_ | +| **gitlab.go_memstats_gc_sys_bytes**
(gauge) | 가비지 컬렉션 시스템 메타데이터에 사용되는 바이트 수
_byte로 표시됨_ | +| **gitlab.go_memstats_heap_alloc_bytes**
(gauge) | 할당되었고, 사용 중인 힙 바이트 수
_byte로 표시됨_ | +| **gitlab.go_memstats_heap_idle_bytes**
(gauge) | 사용 대기 중인 힙 바이트 수
_byte로 표시됨_ | +| **gitlab.go_memstats_heap_inuse_bytes**
(gauge) | 사용 중인 힙 바이트 수
_byte로 표시됨_ | +| **gitlab.go_memstats_heap_objects**
(gauge) | 할당된 객체 수
_request로 표시됨_ | +| **gitlab.go_memstats_heap_released_bytes.count**
(count) | \[OpenMetrics V2\] OS에 반환된 힙바이트 총 개수
_byte로 표시됨_ | +| **gitlab.go_memstats_heap_released_bytes_total**
(count) | \[OpenMetrics V1\] OS에 반환된 힙 바이트 총 개수
_byte로 표시됨_ | +| **gitlab.go_memstats_heap_sys_bytes**
(gauge) | 시스템에서 가져온 힙 바이트 수
_byte로 표시됨_ | +| **gitlab.go_memstats_last_gc_time_seconds**
(gauge) | 1970년 마지막 가비지 컬렉션 이후 경과된 시간(초)
_request로 표시됨_ | +| **gitlab.go_memstats_lookups.count**
(count) | \[OpenMetrics V2\] 포인터 조회 총 횟수
_request로 표시됨_ | +| **gitlab.go_memstats_lookups_total**
(count) | \[OpenMetrics V1\] 포인터 조회 총 횟수
_request로 표시됨_ | +| **gitlab.go_memstats_mallocs.count**
(count) | \[OpenMetrics V2\] malloc 총 횟수
_request로 표시됨_ | +| **gitlab.go_memstats_mallocs_total**
(count) | \[OpenMetrics V1\] malloc 총 횟수
_request로 표시됨_ | +| **gitlab.go_memstats_mcache_inuse_bytes**
(gauge) | mcache 구조체에서 사용 중인 바이트 수
_byte로 표시됨_ | +| **gitlab.go_memstats_mcache_sys_bytes**
(gauge) | system에서 가져온 mcache 구조체에 사용된 바이트 수
_byte로 표시됨_ | +| **gitlab.go_memstats_mspan_inuse_bytes**
(gauge) | mspan 구조체에서 사용 중인 바이트 수
_byte로 표시됨_ | +| **gitlab.go_memstats_mspan_sys_bytes**
(gauge) | 시스템에서 가져온 mspan 구조체에 사용된 바이트 수
_byte로 표시됨_ | +| **gitlab.go_memstats_next_gc_bytes**
(gauge) | 다음 가비지 컬렉션이 발생할 때의 힙 바이트 수
_byte로 표시됨_ | +| **gitlab.go_memstats_other_sys_bytes**
(gauge) | 다른 시스템 할당에 사용된 바이트 수
_byte로 표시됨_ | +| **gitlab.go_memstats_stack_inuse_bytes**
(gauge) | 스택 할당자가 사용 중인 바이트 수
_byte로 표시됨_ | +| **gitlab.go_memstats_stack_sys_bytes**
(gauge) | 스택 할당자를 위해 시스템에서 얻은 바이트 수
_byte로 표시됨_ | +| **gitlab.go_memstats_sys_bytes**
(gauge) | 시스템에서 얻은 바이트 수. 모든 시스템 할당량의 합계
_byte로 표시됨_ | +| **gitlab.go_threads**
(gauge) | 생성된 OS 스레드 수
_request로 표시됨_ | +| **gitlab.http.elasticsearch_requests_duration_seconds.bucket**
(count) | \[OpenMetrics V2\] 웹 트랜잭션 중 Elasticsearch 요청 시간| +| **gitlab.http.elasticsearch_requests_duration_seconds.count**
(count) | 웹 트랜잭션 중 Elasticsearch 요청 시간| +| **gitlab.http.elasticsearch_requests_duration_seconds.sum**
(count) | 웹 트랜잭션 중 Elasticsearch 요청 시간 합계
_second로 표시됨_ | +| **gitlab.http.elasticsearch_requests_total**
(count) | 웹 트랜잭션 중 Elasticsearch 요청 횟수
_request로 표시됨_ | +| **gitlab.http_request_duration_microseconds**
(gauge) | HTTP 요청 지연 시간(마이크로초)
_request로 표시됨_ | +| **gitlab.http_request_size_bytes**
(gauge) | HTTP 요청 크기(바이트)
_byte로 표시됨_ | +| **gitlab.http_response_size_bytes**
(gauge) | HTTP 요청 크기(바이트)
_byte로 표시됨_ | +| **gitlab.job.waiter_started.count**
(count) | \[OpenMetrics V2\] 웹 요청이 작업 완료를 기다리는 동안 시작된 작업 배치 수
_job으로 표시됨_ | +| **gitlab.job.waiter_started_total**
(count) | \[OpenMetrics V1\] 웹 요청이 작업 완료를 기다리는 동안 시작된 작업 배치 수
_job으로 표시됨_ | +| **gitlab.job.waiter_timeouts.count**
(count) | \[OpenMetrics V2\] 웹 요청이 작업 완료를 기다리는 동안 시간 초과된 작업 ​​배치 수
_job으로 표시됨_ | +| **gitlab.job.waiter_timeouts_total**
(count) | \[OpenMetrics V1\] 웹 요청이 작업 완료를 기다리는 동안 시간 초과된 작업 ​​배치 수
_job으로 표시됨_ | +| **gitlab.method_call_duration_seconds.bucket**
(count) | \[OpenMetrics V2\] 메서드 호출 실제 소요 시간
_second로 표시됨_ | +| **gitlab.method_call_duration_seconds.count**
(count) | 메서드 호출 횟수 실제 소요 시간| +| **gitlab.method_call_duration_seconds.sum**
(count) | 메서드 호출 횟수 실제 소요 시간 합계
_second로 표시됨_ | +| **gitlab.page_out_of_bounds**
(count) | PageLimiter 페이지네이션 한도에 도달한 횟수 카운터| +| **gitlab.pipelines_created.count**
(count) | \[OpenMetrics V2\] 생성된 파이프라인 수 카운터| +| **gitlab.pipelines_created_total**
(count) | \[OpenMetrics V1\] 생성된 파이프라인 수 카운터| +| **gitlab.process_cpu_seconds.count**
(count) | \[OpenMetrics V2\] 사용자 및 시스템 CPU 총 사용 시간(초)
_request로 표시됨_ | +| **gitlab.process_cpu_seconds_total**
(count) | \[OpenMetrics V1\] 사용자 및 시스템 CPU 총 사용 시간(초)
_request로 표시됨_ | +| **gitlab.process_max_fds**
(gauge) | 열려 있는 파일 디스크립터의 최대 개수
_request로 표시됨_ | +| **gitlab.process_open_fds**
(gauge) | 열려있는 파일 디스크립터 수
_request로 표시됨_ | +| **gitlab.process_resident_memory_bytes**
(gauge) | 레지던트 메모리 크기(바이트)
_byte로 표시됨_ | +| **gitlab.process_start_time_seconds**
(gauge) | Unix Epoch 이후 프로세스 시작 시간(초)
_request로 표시됨_ | +| **gitlab.process_virtual_memory_bytes**
(gauge) | 가상 메모리 크기(바이트)
_byte로 표시됨_ | +| **gitlab.prometheus_build_info**
(gauge) | Prometheus 빌드 시점의 version, revision, branch, goversion으로 라벨링된 값이 항상 '1'인 메트릭
_request로 표시됨_ | +| **gitlab.prometheus_config_last_reload_success_timestamp_seconds**
(gauge) | 마지막으로 구성이 성공적으로 다시 로드된 타임스탬프
_request로 표시됨_ | +| **gitlab.prometheus_config_last_reload_successful**
(gauge) | 마지막 구성 재설정 시도가 성공했는지 여부
_request로 표시됨_ | +| **gitlab.prometheus_engine_queries**
(gauge) | 현재 실행 중이거나 대기 중인 쿼리 수
_request로 표시됨_ | +| **gitlab.prometheus_engine_queries_concurrent_max**
(gauge) | 동시 쿼리 최대 개수
_request로 표시됨_ | +| **gitlab.prometheus_engine_query_duration_seconds**
(gauge) | 쿼리 타이밍
_request로 표시됨_ | +| **gitlab.prometheus_evaluator_duration_seconds**
(gauge) | 규칙 그룹 평가 기간
_request로 표시됨_ | +| **gitlab.prometheus_evaluator_iterations.count**
(count) | \[OpenMetrics V2\] 실행, 누락 또는 건너뛴 경우를 포함하여 예정된 규칙 그룹 평가의 총 개수
_request로 표시됨_ | +| **gitlab.prometheus_evaluator_iterations_missed.count**
(count) | \[OpenMetrics V2\] 규칙 그룹 평가 지연으로 인해 누락된 규칙 그룹 평가의 총 개수
_request로 표시됨_ | +| **gitlab.prometheus_evaluator_iterations_missed_total**
(count) | \[OpenMetrics V1\] 규칙 그룹 평가 지연으로 인해 누락된 규칙 그룹 평가의 총 개수
_request로 표시됨_ | +| **gitlab.prometheus_evaluator_iterations_skipped.count**
(count) | \[OpenMetrics V2\] 메트릭 저장 용량 제한으로 인해 건너뛴 규칙 그룹 평가의 총 개수
_request로 표시됨_ | +| **gitlab.prometheus_evaluator_iterations_skipped_total**
(count) | \[OpenMetrics V1\] 메트릭 저장 용량 제한으로 인해 건너뛴 규칙 그룹 평가의 총 개수
_request로 표시됨_ | +| **gitlab.prometheus_evaluator_iterations_total**
(count) | \[OpenMetrics V1\] 실행, 누락 또는 건너뛴 경우를 포함하여 예정된 규칙 그룹 평가의 총 횟수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_checkpoint_duration_seconds**
(gauge) | 열려 있거나 아직 저장되지 않은 청크에 체크포인트를 생성하는 데 걸린 시간(초)
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_checkpoint_last_duration_seconds**
(gauge) | 열려있거나 아직 저장되지 않은 청크를 포함하여 마지막 체크포인트 실행 시간(초)
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_checkpoint_last_size_bytes**
(gauge) | 열려 있거나 아직 영구 저장되지 않은 청크들의 마지막 체크포인트 크기
_byte로 표시됨_ | +| **gitlab.prometheus_local_storage_checkpoint_series_chunks_written**
(gauge) | 열려있거나 아직 저장되지 않은 청크에 체크포인트를 실행하는 동안 시리즈별로 기록된 청크 수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_checkpointing**
(gauge) | 저장소가 체크포인트 기능을 사용하면 1, 그렇지 않으면 0을 반환
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_chunk_ops.count**
(count) | \[OpenMetrics V2\] 유형별 청크 작업의 총 개수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_chunk_ops_total**
(count) | \[OpenMetrics V1\] 유형별 청크 작업 총 개수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_chunks_to_persist**
(count) | 현재 영구 저장을 기다리는 청크 수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_fingerprint_mappings.count**
(count) | \[OpenMetrics V2\] 충돌 방지를 위해 매핑되는 지문의 총 개수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_fingerprint_mappings_total**
(count) | \[OpenMetrics V1\] 충돌 방지를 위해 매핑되는 지문의 총 개수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_inconsistencies.count**
(count) | \[OpenMetrics V2\] 로컬 저장소에서 불일치가 감지될 때마다 카운터가 증가함. 이 값이 0보다 크면 가능한 한 빨리 서버를 재시작하세요.
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_inconsistencies_total**
(count) | \[OpenMetrics V1\] 로컬 저장소에서 불일치가 감지될 때마다 카운터가 증가함. 이 값이 0보다 크면 가능한 한 빨리 서버를 재시작하세요.
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_indexing_batch_duration_seconds**
(gauge) | 배치 인덱싱 소요 시간(초)의 분위수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_indexing_batch_sizes**
(gauge) | 배치 크기(배치당 메트릭 수) 인덱싱에 대한 분위수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_indexing_queue_capacity**
(gauge) | 인덱싱 대기열 용량
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_indexing_queue_length**
(gauge) | 인덱싱 대기 중인 메트릭 수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_ingested_samples.count**
(count) | \[OpenMetrics V2\] 수집한 샘플 총 개수
_ request로 표시됨_ | +| **gitlab.prometheus_local_storage_ingested_samples_total**
(count) | \[OpenMetrics V1\] 수집한 샘플의 총 개수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_maintain_series_duration_seconds**
(gauge) | 시계열 유지 보수에 걸린 시간(초)
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_memory_chunkdescs**
(gauge) | 현재 메모리에 있는 청크 디스크립터의 개수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_memory_chunks**
(gauge) | 현재 메모리에 있는 청크 개수. 이 개수에는 복제된 청크(즉, 디스크립터가 없는 청크)는 포함되지 않습니다.
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_memory_dirty_series**
(gauge) | 현재 충돌 복구 중 디스크 탐색이 필요한 시리즈 수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_memory_series**
(gauge) | 현재 메모리에 있는 시리즈 수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_non_existent_series_matches.count**
(count) | \[OpenMetrics V2\] 레이블 매칭 또는 청크 사전 로딩 중에 존재하지 않는 시리즈가 얼마나 자주 참조되었는지 표시. 오래된 레이블 인덱스를 나타내는 지표입니다.
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_non_existent_series_matches_total**
(count) | \[OpenMetrics V1\] 레이블 매칭 또는 청크 사전 로딩 중에 존재하지 않는 시리즈가 얼마나 자주 참조되었는지 표시. 오래된 레이블 인덱스를 나타내는 지표입니다.
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_open_head_chunks**
(gauge) | 현재 열린 헤드 청크 수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_out_of_order_samples.count**
(count) | \[OpenMetrics V2\] 시리즈 샘플 중 마지막으로 수신된 샘플의 타임스탬프와 같거나 그 이전이라서 폐기된 샘플의 총 개수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_out_of_order_samples_total**
(count) | \[OpenMetrics V1\] 시린즈 샘플 중 마지막으로 수신된 샘플의 타임스탬프와 같거나 그 이전이라서 폐기된 샘플의 총 개수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_persist_errors.count**
(count) | \[OpenMetrics V2\] 영구 저장 계층에 쓰기 작업 중 발생한 총 오류 수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_persist_errors_total**
(count) | \[OpenMetrics V1\] 영구 저장 계층에 쓰기 작업 중 발생한 총 오류 수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_persistence_urgency_score**
(gauge) | 영구 저장해야 하는 청크의 긴급도 점수. 0은 가장 덜 긴급, 1은 가장 긴급
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_queued_chunks_to_persist.count**
(count) | \[OpenMetrics V2\] 영구 저장을 위해 대기 중인 청크의 총 개수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_queued_chunks_to_persist_total**
(count) | \[OpenMetrics V1\] 영구 저장을 대기 중인 청크의 총 개수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_rushed_mode**
(gauge) | 저장소가 긴급 모드이면 1, 그렇지 않으면 0
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_series_chunks_persisted**
(gauge) | 시리즈별로 저장된 청크 수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_series_ops.count**
(count) | \[OpenMetrics V2\] 유형별 시리즈 작업 총 개수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_series_ops_total**
(count) | \[OpenMetrics V1\] 유형별 시리즈 작업 총 개수
_request로 표시됨_ | +| **gitlab.prometheus_local_storage_started_dirty**
(gauge) | Prometheus 시작 중에 로컬 저장소가 손상된 것으로 확인되었는지 여부 (및 크래시 복구 발생 여부)
_request로 표시_ | +| **gitlab.prometheus_local_storage_target_heap_size_bytes**
(gauge) | 구성된 대상 힙 크기(바이트)
_byte로 표시됨_ | +| **gitlab.prometheus_notifications_alertmanagers_discovered**
(gauge) | 발견되어 활성화된 Alertmanager 수
_request로 표시됨_ | +| **gitlab.prometheus_notifications_dropped.count**
(count) | \[OpenMetrics V2\] Alertmanager로 전송 중 오류로 인해 누락된 총 알림 수
_request로 표시됨_ | +| **gitlab.prometheus_notifications_dropped_total**
(count) | \[OpenMetrics V1\] Alertmanager로 전송 중 오류로 인해 누락된 총 알림 수
_request로 표시됨_ | +| **gitlab.prometheus_notifications_queue_capacity**
(gauge) | 알림 대기열 용량
_request로 표시됨_ | +| **gitlab.prometheus_notifications_queue_length**
(gauge) | 대기열에 있는 알림 수
_request로 표시됨_ | +| **gitlab.prometheus_rule_evaluation_failures.count**
(count) | \[OpenMetrics V2\] 규칙 평가 실패 총 횟수
_request로 표시됨_ | +| **gitlab.prometheus_rule_evaluation_failures_total**
(count) | \[OpenMetrics V1\] 규칙 평가 실패 총 횟수
_request로 표시됨_ | +| **gitlab.prometheus_sd_azure_refresh_duration_seconds**
(gauge) | Azure-SD 새로 고침에 소요되는 시간(초)
_request로 표시됨_ | +| **gitlab.prometheus_sd_azure_refresh_failures.count**
(count) | \[OpenMetrics V2\] Azure-SD 새로 고침 실패 횟수
_request로 표시됨_ | +| **gitlab.prometheus_sd_azure_refresh_failures_total**
(count) | \[OpenMetrics V1\] Azure-SD 새로 고침 실패 횟수
_request로 표시됨_ | +| **gitlab.prometheus_sd_consul_rpc_duration_seconds**
(gauge) | Consul RPC 호출 지속 시간(초)
_request로 표시됨_ | +| **gitlab.prometheus_sd_consul_rpc_failures.count**
(count) | \[OpenMetrics V2\] Consul RPC 호출 실패 횟수
_request로 표시됨_ | +| **gitlab.prometheus_sd_consul_rpc_failures_total**
(count) | \[OpenMetrics V1\] Consul RPC 호출 실패 횟수
_request로 표시됨_ | +| **gitlab.prometheus_sd_dns_lookup_failures.count**
(count) | \[OpenMetrics V2\] DNS-SD 조회 실패 횟수
_request로 표시됨_ | +| **gitlab.prometheus_sd_dns_lookup_failures_total**
(count) | \[OpenMetrics V1\] DNS-SD 조회 실패 횟수
_request로 표시됨_ | +| **gitlab.prometheus_sd_dns_lookups.count**
(count) | \[OpenMetrics V2\] DNS-SD 조회 횟수
_request로 표시됨_ | +| **gitlab.prometheus_sd_dns_lookups_total**
(count) | \[OpenMetrics V1\] DNS-SD 조회 횟수
_request로 표시됨_ | +| **gitlab.prometheus_sd_ec2_refresh_duration_seconds**
(gauge) | EC2-SD 새로 고침에 걸리는 시간(초)
_request로 표시됨_ | +| **gitlab.prometheus_sd_ec2_refresh_failures.count**
(count) | \[OpenMetrics V2\] TEC2-SD 스크레이프 실패 횟수
_request로 표시됨_ | +| **gitlab.prometheus_sd_ec2_refresh_failures_total**
(count) | \[OpenMetrics V1\] EC2-SD 스크레이프 실패 횟수
_request로 표시됨_ | +| **gitlab.prometheus_sd_file_read_errors.count**
(count) | \[OpenMetrics V2\] 파일-SD 읽기 오류 수
_request로 표시됨_ | +| **gitlab.prometheus_sd_file_read_errors_total**
(count) | \[OpenMetrics V1\] T파일-SD 읽기 오류 수
_request로 표시됨_ | +| **gitlab.prometheus_sd_file_scan_duration_seconds**
(gauge) | 파일-SD 스캔 소요 시간(초)
_request로 표시됨_ | +| **gitlab.prometheus_sd_gce_refresh_duration**
(gauge) | GCE-SD 새로 고침 시간(초)
_request로 표시됨_ | +| **gitlab.prometheus_sd_gce_refresh_failures.count**
(count) | \[OpenMetrics V2\] GCE-SD 새로 고침 실패 횟수
_request로 표시됨_ | +| **gitlab.prometheus_sd_gce_refresh_failures_total**
(count) | \[OpenMetrics V1\] GCE-SD 새로 고침 실패 횟수
_request로 표시됨_ | +| **gitlab.prometheus_sd_kubernetes_events.count**
(count) | \[OpenMetrics V2\] 처리된 Kubernetes 이벤트 수
_request로 표시됨_ | +| **gitlab.prometheus_sd_kubernetes_events_total**
(count) | \[OpenMetrics V1\] 처리된 Kubernetes 이벤트 수
_request로 표시됨_ | +| **gitlab.prometheus_sd_marathon_refresh_duration_seconds**
(gauge) | Marathon-SD 새로 고침에 걸리는 시간(초)
_request로 표시됨_ | +| **gitlab.prometheus_sd_marathon_refresh_failures.count**
(count) | \[OpenMetrics V2\] Marathon-SD 새로 고침 실패 횟수
_request로 표시됨_ | +| **gitlab.prometheus_sd_marathon_refresh_failures_total**
(count) | \[OpenMetrics V1\] Marathon-SD 새로 고침 실패 횟수
_request로 표시됨_ | +| **gitlab.prometheus_sd_openstack_refresh_duration_seconds**
(gauge) | OpenStack-SD 새로 고침에 걸리는 시간(초)
_request로 표시됨_ | +| **gitlab.prometheus_sd_openstack_refresh_failures.count**
(count) | \[OpenMetrics V2\] OpenStack-SD 스크레이프 실패 횟수
_request로 표시됨_ | +| **gitlab.prometheus_sd_openstack_refresh_failures_total**
(count) | \[OpenMetrics V1\] OpenStack-SD 스크레이프 실패 횟수
_request로 표시됨_ | +| **gitlab.prometheus_sd_triton_refresh_duration_seconds**
(gauge) | Triton-SD 새로 고침에 걸리는 시간(초)
_request로 표시됨_ | +| **gitlab.prometheus_sd_triton_refresh_failures.count**
(count) | \[OpenMetrics V2\] Triton-SD 스크레이프 실패 횟수
_request로 표시됨_ | +| **gitlab.prometheus_sd_triton_refresh_failures_total**
(count) | \[OpenMetrics V1\] Triton-SD 스크레이프 실패 횟수
_request로 표시됨_ | +| **gitlab.prometheus_target_interval_length_seconds**
(gauge) | 스크레이프 사이의 실제 간격
_request로 표시됨_ | +| **gitlab.prometheus_target_scrape_pool_sync.count**
(count) | \[OpenMetrics V2\] 스크레이프 풀에서 실행된 총 동기화 횟수
_ request로 표시됨_ | +| **gitlab.prometheus_target_scrape_pool_sync_total**
(count) | \[OpenMetrics V1\] 스크레이프 풀에서 실행된 총 동기화 횟수
_request로 표시됨_ | +| **gitlab.prometheus_target_scrapes_exceeded_sample_limit.count**
(count) | \[OpenMetrics V2\] 샘플 제한에 도달하여 거부된 스크레이프 총 개수
_request로 표시됨_ | +| **gitlab.prometheus_target_scrapes_exceeded_sample_limit_total**
(count) | \[OpenMetrics V1\] 샘플 제한에 도달하여 거부된 스크레이프 총 개수
_request로 표시됨_ | +| **gitlab.prometheus_target_skipped_scrapes.count**
(count) | \[OpenMetrics V2\] 메트릭 저장 용량 제한으로 인해 건너뛴 스크레이프 총 개수
_request로 표시됨_ | +| **gitlab.prometheus_target_skipped_scrapes_total**
(count) | \[OpenMetrics V1\] 메트릭 저장 용량 제한으로 인해 건너뛴 스크레이프 총 개수
_request로 표시됨_ | +| **gitlab.prometheus_target_sync_length_seconds**
(gauge) | 스크레이프 풀을 동기화하는 실제 간격
_request로 표시됨_ | +| **gitlab.prometheus_treecache_watcher_goroutines**
(gauge) | 현재 watcher goroutine 개수
_request로 표시됨_ | +| **gitlab.prometheus_treecache_zookeeper_failures.count**
(count) | \[OpenMetrics V2\] ZooKeeper 총 실패 횟수
_request로 표시됨_ | +| **gitlab.prometheus_treecache_zookeeper_failures_total**
(count) | \[OpenMetrics V1\] ZooKeeper 총 실패 횟수
_request로 표시됨_ | +| **gitlab.puma.active_connections**
(gauge) | 요청을 처리하는 Puma 스레드 수
_thread로 표시됨_ | +| **gitlab.puma.idle_threads**
(gauge) | 생성되었지만 요청을 처리하지 않는 Puma 스레드 수
_thread로 표시됨_ | +| **gitlab.puma.killer_terminations.count**
(count) | \[OpenMetrics V2\] PumaWorkerKille가 종료한 워커 수
_worker로 표시됨_ | +| **gitlab.puma.killer_terminations_total**
(count) | \[OpenMetrics V1\] PumaWorkerKille가 종료한 워커 수
_worker로 표시됨_ | +| **gitlab.puma.max_threads**
(gauge) | Puma 워커 스레드의 최대 개수
_thread로 표시됨_ | +| **gitlab.puma.pool_capacity**
(gauge) | Puma 워커가 현재 처리할 수 있는 요청 수
_request로 표시됨_ | +| **gitlab.puma.queued_connections**
(gauge) | 해당 Puma 워커의`todo` 세트에서 워커 스레드를 기다리는 연결 수
_connection으로 표시됨_ | +| **gitlab.puma.running**
(gauge) | 실행 중인 Puma 스레드 수
_thread로 표시됨_ | +| **gitlab.puma.running_workers**
(gauge) | 부팅된 Puma 워커 수
_worker로 표시됨_ | +| **gitlab.puma.stale_workers**
(gauge) | 오래된 Puma 워커 수
_worker로 표시됨_ | +| **gitlab.puma.workers**
(gauge) | Puma 워커 수
_worker로 표시됨_ | +| **gitlab.rack.http_request_duration_seconds.bucket**
(count) | \[OpenMetrics V2\] 랙 미들웨어의 HTTP 응답 시간
_second로 표시됨_ | +| **gitlab.rack.http_request_duration_seconds.count**
(count) | 랙 미들웨어의 HTTP 응답 시간| +| **gitlab.rack.http_request_duration_seconds.sum**
(count) | 랙 미들웨어의 HTTP 응답 시간 합계
_second로 표시됨_ | +| **gitlab.rack.http_requests.count**
(count) | \[OpenMetrics V2\] 랙 요청 수
_request로 표시됨_ | +| **gitlab.rack.http_requests_total**
(count) | \[OpenMetrics V1\] 랙 요청 수
_request로 표시됨_ | +| **gitlab.rack.uncaught_errors.count**
(count) | \[OpenMetrics V2\] 처리되지 않은 오류를 처리하는 랙 연결 수
_connection으로 표시됨_ | +| **gitlab.rack.uncaught_errors_total**
(count) | \[OpenMetrics V1\] 처리되지 않은 오류를 처리하는 랙 연결 수
_connection으로 표시됨_ | +| **gitlab.rails_queue_duration_seconds.bucket**
(count) | \[OpenMetrics V2\] GitLab Workhorse가 Rails로 요청을 전달하는 데 걸리는 지연 시간
_second로 표시됨_ | +| **gitlab.rails_queue_duration_seconds.count**
(count) | GitLab Workhorse가 Rails로 요청을 전달하는 데 걸리는 지연 시간| +| **gitlab.rails_queue_duration_seconds.sum**
(count) | GitLab Workhorse가 Rails로 요청을 전달하는 데 걸리는 지연 시간 합계
_second로 표시됨_ | +| **gitlab.redis.client_exceptions.count**
(count) | \[OpenMetrics V2\] 예외 유형별로 분류된 Redis 클라이언트 예외 건수
_error로 표시됨_ | +| **gitlab.redis.client_exceptions_total**
(count) | \[OpenMetrics V1\] 예외 유형별로 분류된 Redis 클라이언트 예외 건수
_error로 표시됨_ | +| **gitlab.redis.client_requests.count**
(count) | \[OpenMetrics V2\] Redis 클라이언트 요청 수
_request로 표시됨_ | +| **gitlab.redis.client_requests_duration_seconds.bucket**
(count) | \[OpenMetrics V2\] 차단 명령을 제외한 Redis 요청 지연 시간| +| **gitlab.redis.client_requests_duration_seconds.count**
(count) | 차단 명령을 제외한 Redis 요청 지연 시간| +| **gitlab.redis.client_requests_duration_seconds.sum**
(count) | 차단 명령을 제외한 Redis 요청 지연 시간 합계
_second로 표시됨_ | +| **gitlab.redis.client_requests_total**
(count) | \[OpenMetrics V1\] Redis 클라이언트 요청 수
_request로 표시됨_ | +| **gitlab.ruby.file_descriptors**
(gauge) | 프로세스당 파일 디스크립터 수| +| **gitlab.ruby.gc_duration_seconds.bucket**
(count) | \[OpenMetrics V2\] Ruby가 GC에 소요한 시간
_second로 표시됨_ | +| **gitlab.ruby.gc_duration_seconds.count**
(count) | Ruby가 GC에 소요한 시간| +| **gitlab.ruby.gc_duration_seconds.sum**
(count) | Ruby가 GC에 소요한 시간 합계
_second로 표시됨_ | +| **gitlab.ruby.gc_stat**
(gauge) | \[OpenMetrics V2\] Ruby 가비지 컬렉터 수| +| **gitlab.ruby.gc_stat.count**
(gauge) | \[OpenMetrics V1\] Ruby 가비지 컬렉터 수| +| **gitlab.ruby.gc_stat.heap_allocatable_pages**
(gauge) | 사용 가능한 할당 페이지 수
_page로 표시됨_ | +| **gitlab.ruby.gc_stat.heap_allocated_pages**
(gauge) | 현재 할당된 힙 페이지 수
_page로 표시됨_ | +| **gitlab.ruby.gc_stat.heap_available_slots**
(gauge) | 힙 페이지의 슬롯 수| +| **gitlab.ruby.gc_stat.heap_eden_pages**
(gauge) | 활성 객체를 포함하는 힙 페이지 수
_page로 표시됨_ | +| **gitlab.ruby.gc_stat.heap_final_slots**
(gauge) | 파이널라이저가 있는 힙 슬롯 수| +| **gitlab.ruby.gc_stat.heap_free_slots**
(gauge) | 힙의 빈 슬롯 수| +| **gitlab.ruby.gc_stat.heap_live_slots**
(gauge) | 힙에 있는 활성 슬롯 수| +| **gitlab.ruby.gc_stat.heap_marked_slots**
(gauge) | 표시된 슬롯 수 또는 오래된 슬롯 수
_page로 표시됨_ | +| **gitlab.ruby.gc_stat.heap_sorted_length**
(gauge) | 메모리 힙의 길이| +| **gitlab.ruby.gc_stat.heap_tomb_pages**
(gauge) | 활성 객체가 없는 힙 페이지 수
_page로 표시됨_ | +| **gitlab.ruby.gc_stat.major_gc_count**
(gauge) | 주요 가비지 컬렉터 수
_garbage collection으로 표시됨_ | +| **gitlab.ruby.gc_stat.malloc_increase_bytes**
(gauge) | 힙 외부에 할당된 바이트 수
_byte로 표시됨_ | +| **gitlab.ruby.gc_stat.malloc_increase_bytes_limit**
(gauge) | 힙 외부에 할당할 수 있는 바이트 수 한도
_byte로 표시됨_ | +| **gitlab.ruby.gc_stat.minor_gc_count**
(gauge) | 마이너 가비지 컬렉터 수
_garbage collection으로 표시됨_ | +| **gitlab.ruby.gc_stat.old_objects**
(gauge) | 오래된 객체 수| +| **gitlab.ruby.gc_stat.old_objects_limit**
(gauge) | 오래된 객체 수 제한| +| **gitlab.ruby.gc_stat.oldmalloc_increase_bytes**
(gauge) | 오래된 객체를 위해 힙 외부에 할당된 바이트 수
_byte로 표시됨_ | +| **gitlab.ruby.gc_stat.oldmalloc_increase_bytes_limit**
(gauge) | 오래된 객체에 힙 외부 영역에 할당할 수 있는 바이트 수 한도
_byte로 표시됨_ | +| **gitlab.ruby.gc_stat.remembered_wb_unprotected_objects**
(gauge) | 새 객체를 참조하는 오래된 객체 수| +| **gitlab.ruby.gc_stat.remembered_wb_unprotected_objects_limit**
(gauge) | WB 미적용 객체 제한| +| **gitlab.ruby.gc_stat.total_allocated_objects**
(gauge) | 할당된 객체의 총 개수| +| **gitlab.ruby.gc_stat.total_allocated_pages**
(gauge) | 할당된 페이지 수
_page로 표시됨_ | +| **gitlab.ruby.gc_stat.total_freed_objects**
(gauge) | 해제된 객체의 수| +| **gitlab.ruby.gc_stat.total_freed_pages**
(gauge) | 해제된 페이지 수
_page로 표시됨_ | +| **gitlab.ruby.memory_bytes**
(gauge) | 메모리 사용량
_byte로 표시됨_ | +| **gitlab.ruby.process_cpu_seconds_total**
(gauge) | \[OpenMetrics V1 and V2\] 프로세스별 총 CPU 사용 시간
_second로 표시됨_ | +| **gitlab.ruby.process_max_fds**
(gauge) | 프로세스당 열려 있는 파일 디스크립터의 최대 개수| +| **gitlab.ruby.process_proportional_memory_bytes**
(gauge) | 프로세스별 메모리 사용량(PSS/Proportional Set Size)
_byte로 표시됨_ | +| **gitlab.ruby.process_resident_memory_bytes**
(gauge) | 프로세스별 메모리 사용량
_byte로 표시됨_ | +| **gitlab.ruby.process_start_time_seconds**
(gauge) | 프로세스 시작 시간의 UNIX 타임스탬프
_second로 표시됨_ | +| **gitlab.ruby.process_unique_memory_bytes**
(gauge) | 프로세스별 메모리 사용량 (USS/Unique Set Size)
_byte로 표시됨_ | +| **gitlab.ruby.sampler_duration_seconds.count**
(count) | \[OpenMetrics V2\] 통계 수집에 소요된 시간
_second로 표시됨_ | +| **gitlab.ruby.sampler_duration_seconds_total**
(count) | \[OpenMetrics V1\] 통계 수집에 소요된 시간
_second로 표시됨_ | +| **gitlab.ruby.threads_max_expected_threads**
(gauge) | 애플리케이션 작업을 위해 실행될 것으로 예상되는 최대 스레드 수
_thread로 표시됨_ | +| **gitlab.ruby.threads_running_threads**
(gauge) | 이름별 실행 중인 Ruby 스레드 수
_thread로 표시됨_ | +| **gitlab.sidekiq.concurrency**
(gauge) | Sidekiq 작업 최대 수
_job으로 표시됨_ | +| **gitlab.sidekiq.elasticsearch_requests.count**
(count) | \[OpenMetrics V2\] Sidekiq 작업 실행 중 발생한 Elasticsearch 요청
_request로 표시됨_ | +| **gitlab.sidekiq.elasticsearch_requests_duration_seconds.bucket**
(count) | \[OpenMetrics V2\] Sidekiq 작업이 Elasticsearch 서버에 요청을 보내는 데 소요된 시간(초)| +| **gitlab.sidekiq.elasticsearch_requests_duration_seconds.count**
(count) | Sidekiq 작업이 Elasticsearch 서버에 요청을 보내는 데 소요된 시간(초).| +| **gitlab.sidekiq.elasticsearch_requests_duration_seconds.sum**
(count) | Sidekiq 작업이 Elasticsearch 서버에 요청을 보내는 데 소요된 시간의 합계(초)
_second로 표시됨_ | +| **gitlab.sidekiq.elasticsearch_requests_total**
(count) | \[OpenMetrics V1\] Sidekiq 작업 실행 중 Elasticsearch 요청
_request로 표시됨_ | +| **gitlab.sidekiq.jobs_completion_seconds.count**
(count) | Sidekiq 작업 완료에 걸리는 시간(초)
_second로 표시됨_ | +| **gitlab.sidekiq.jobs_completion_seconds.sum**
(count) | Sidekiq 작업 완료에 걸린 시간(초)의 합계
_second로 표시됨_ | +| **gitlab.sidekiq.jobs_cpu_seconds.bucket**
(count) | \[OpenMetrics V2\] Sidekiq 작업 실행에 걸리는 CPU 시간(초)
_second로 표시됨_ | +| **gitlab.sidekiq.jobs_cpu_seconds.count**
(count) | Sidekiq 작업을 실행하는 데 걸린 CPU 시간(초)| +| **gitlab.sidekiq.jobs_cpu_seconds.sum**
(count) | Sidekiq 작업을 실행하는 데 걸린 CPU 시간(초)
_second로 표시됨_ | +| **gitlab.sidekiq.jobs_db_second.bucket**
(count) | \[OpenMetrics V2\] Sidekiq 작업을 실행하는 데 걸리는 DB 시간(초)
_second로 표시됨_ | +| **gitlab.sidekiq.jobs_db_second.count**
(count) | Sidekiq 작업을 실행하는 데 걸리는 DB 시간(초)| +| **gitlab.sidekiq.jobs_db_second.sum**
(count) | Sidekiq 작업을 실행하는 데 걸리는 DB 시간 합계(초)
_second로 표시됨_ | +| **gitlab.sidekiq.jobs_failed.count**
(count) | \[OpenMetrics V2\] Sidekiq 작업 실패 건수
_job로 표시됨_ | +| **gitlab.sidekiq.jobs_failed_total**
(count) | \[OpenMetrics V1\] Sidekiq 작업 실패 건수
_job으로 표시됨_ | +| **gitlab.sidekiq.jobs_gitaly_seconds.bucket**
(count) | \[OpenMetrics V2\] Sidekiq job1을 실행하는 데 걸리는 Gitaly 시간(초)
_second로 표시됨_ | +| **gitlab.sidekiq.jobs_gitaly_seconds.count**
(count) | Gitaly에서 Sidekiq 작업을 실행하는 데 걸린 시간(초)| +| **gitlab.sidekiq.jobs_gitaly_seconds.sum**
(count) | Sidekiq 작업을 실행하는 데 걸린 Gitaly 시간 합계(초)
_second로 표시됨_ | +| **gitlab.sidekiq.jobs_queue_duration_seconds.bucket**
(count) | \[OpenMetrics V2\] Sidekiq 작업이 실행되기 전에 대기열에 있었던 시간(초)
_second로 표시됨_ | +| **gitlab.sidekiq.jobs_queue_duration_seconds.count**
(count) | Sidekiq 작업이 실행되기 전에 대기열에 있었던 시간(초)| +| **gitlab.sidekiq.jobs_queue_duration_seconds.sum**
(count) | Sidekiq 작업이 실행되기 전에 대기열에 있었던 시간의 합(초)
_second로 표시됨_ | +| **gitlab.sidekiq.jobs_retried.count**
(count) | \[OpenMetrics V2\] Sidekiq 작업 재시도 횟수
_job으로 표시됨_ | +| **gitlab.sidekiq.jobs_retried_total**
(count) | \[OpenMetrics V1\] Sidekiq 작업 재시도 횟수
_job으로 표시됨_ | +| **gitlab.sidekiq.redis_requests.count**
(count) | \[OpenMetrics V2\] Sidekiq 작업 실행 중 Redis 요청
_request로 표시됨_ | +| **gitlab.sidekiq.redis_requests_duration_seconds.bucket**
(count) | \[OpenMetrics V2\] Sidekiq 작업이 Redis 서버를 쿼리하는 데 소요된 시간(초)| +| **gitlab.sidekiq.redis_requests_duration_seconds.count**
(count) | Sidekiq 작업이 Redis 서버를 쿼리하는 데 소요된 시간(초)| +| **gitlab.sidekiq.redis_requests_duration_seconds.sum**
(count) | Sidekiq 작업이 Redis 서버를 쿼리하는 데 소요된 시간 합계(초)
_second로 표시됨_ | +| **gitlab.sidekiq.redis_requests_total**
(count) | \[OpenMetrics V1\] Sidekiq 작업 실행 중 Redis 요청
_request로 표시됨_ | +| **gitlab.sidekiq.running_jobs**
(gauge) | 실행 중인 Sidekiq 작업 수
_job으로 표시됨_ | +| **gitlab.sql_duration_seconds.bucket**
(count) | \[OpenMetrics V2\] SCHEMA 작업 및 BEGIN/COMMIT을 제외한 총 SQL 실행 시간
_second로 표시됨_ | +| **gitlab.sql_duration_seconds.count**
(count) | SCHEMA 작업 및 BEGIN/COMMIT을 제외한 총 SQL 실행 시간| +| **gitlab.sql_duration_seconds.sum**
(count) | SCHEMA 작업 및 BEGIN/COMMIT을 제외한 총 SQL 실행 시간 합계
_second로 표시됨_ | +| **gitlab.successful_login_captcha.count**
(count) | 로그인 중 CAPTCHA 시도 성공 횟수| +| **gitlab.successful_login_captcha_total**
(count) | 로그인 중 CAPTCHA 시도 성공 횟수| +| **gitlab.transaction.allocated_memory_bytes.bucket**
(count) | \[OpenMetrics V2\] 모든 트랜잭션을 위해 할당된 메모리 (gitlab_transaction\_\* metrics)
_byte로 표시됨_ | +| **gitlab.transaction.allocated_memory_bytes.count**
(count) | 모든 트랜잭션을 위해 할당된 메모리 (gitlab_transaction\_\* metrics)
_byte로 표시됨_ | +| **gitlab.transaction.allocated_memory_bytes.sum**
(count) | 모든 트랜잭션을 위해 할당된 메모리 합계 (gitlab_transaction\_\* metrics)
_byte로 표시됨_ | +| **gitlab.transaction.cache_count.count**
(count) | \[OpenMetrics V2\] Rails 캐시 호출 총 횟수 (누적)| +| **gitlab.transaction.cache_count_total**
(count) | \[OpenMetrics V1\] Rails 캐시 호출 총 횟수 (누적)| +| **gitlab.transaction.cache_duration.count**
(count) | \[OpenMetrics V2\] Rails 캐시 호출(누적)에 소요된 총 시간(초)
_second로 표시됨_ | +| **gitlab.transaction.cache_duration_total**
(count) | \[OpenMetrics V1\] Rails 캐시 호출(누적)에 소요된 총 시간(초)
_second로 표시됨_ | +| **gitlab.transaction.cache_read_hit_count.count**
(count) | \[OpenMetrics V2\] Rails 캐시 호출에 대한 캐시 적중 횟수
_hit로 표시됨_ | +| **gitlab.transaction.cache_read_hit_count_total**
(count) | \[OpenMetrics V1\] Rails 캐시 호출에 대한 캐시 적중 횟수
_hit로 표시됨_ | +| **gitlab.transaction.cache_read_miss_count.count**
(count) | \[OpenMetrics V2\] Rails 캐시 호출에 대한 캐시 미스 횟수
_miss로 표시됨_ | +| **gitlab.transaction.cache_read_miss_count_total**
(count) | \[OpenMetrics V1\] Rails 캐시 호출에 대한 캐시 미스 횟수
_miss로 표시됨_ | +| **gitlab.transaction.duration_seconds.bucket**
(count) | \[OpenMetrics V2\] 모든 트랜잭션 소요 시간 (gitlab_transaction\_\* metrics)
_second로 표시됨_ | +| **gitlab.transaction.duration_seconds.count**
(count) | 모든 트랜잭션 소요 시간 (gitlab_transaction\_\* metrics)| +| **gitlab.transaction.duration_seconds.sum**
(count) | 모든 트랜잭션 소요 시간 합계 (gitlab_transaction\_\* metrics)
_second로 표시됨_ | +| **gitlab.transaction.event_build_found.count**
(count) | \[OpenMetrics V2\] API/작업/요청에 발견된 빌드 개수| +| **gitlab.transaction.event_build_found_total**
(count) | \[OpenMetrics V1\] API/작업/요청에 발견된 빌드 개수| +| **gitlab.transaction.event_build_invalid.count**
(count) | \[OpenMetrics V2\] API/작업/요청에 관해 동시 충돌로 인해 무효화된 빌드 개수| +| **gitlab.transaction.event_build_invalid_total**
(count) | \[OpenMetrics V1\] API /jobs/request에 대한 동시 충돌로 무효화된 빌드 개수| +| **gitlab.transaction.event_build_not_found.count**
(count) | \[OpenMetrics V2\] API /jobs/request에서 빌드를 찾지 못한 횟수| +| **gitlab.transaction.event_build_not_found_cached.count**
(count) | \[OpenMetrics V2\] API /jobs/request에 대해 찾을 수 없는 빌드가 캐시된 응답 개수| +| **gitlab.transaction.event_build_not_found_cached_total**
(count) | \[OpenMetrics V1\] API /jobs/request에 대해 찾을 수 없는 빌드가 캐시된 응답 개수| +| **gitlab.transaction.event_build_not_found_total**
(count) | \[OpenMetrics V1\] API /jobs/request에서 빌드를 찾지 못한 횟수| +| **gitlab.transaction.event_change_default_branch.count**
(count) | \[OpenMetrics V2\] 리포지토리 기본 브랜치 변경 횟수| +| **gitlab.transaction.event_change_default_branch_total**
(count) | \[OpenMetrics V1\] 리포지토리 기본 브랜치 변경 횟수| +| **gitlab.transaction.event_create_repository.count**
(count) | \[OpenMetrics V2\] 새 리포지토리 생성 횟수| +| **gitlab.transaction.event_create_repository_total**
(count) | \[OpenMetrics V1\] 새 리포지토리 생성 횟수| +| **gitlab.transaction.event_etag_caching_cache_hit.count**
(count) | \[OpenMetrics V2\] etag 캐시 적중 횟수
_hit로 표시됨_ | +| **gitlab.transaction.event_etag_caching_cache_hit_total**
(count) | \[OpenMetrics V1\] etag 캐시 적중 횟수
_hit로 표시됨_ | +| **gitlab.transaction.event_etag_caching_header_missing.count**
(count) | \[OpenMetrics V2\] etag 캐시 미스 - 헤더 누락 횟수
_miss로 표시됨_ | +| **gitlab.transaction.event_etag_caching_header_missing_total**
(count) | \[OpenMetrics V1\] etag 캐시 미스 - 헤더 누락 횟수
_miss로 표시됨_ | +| **gitlab.transaction.event_etag_caching_key_not_found.count**
(count) | \[OpenMetrics V2\] etag 캐시 미스 - 키 누락 횟수
_miss로 표시됨_ | +| **gitlab.transaction.event_etag_caching_key_not_found_total**
(count) | \[OpenMetrics V1\] etag 캐시 미스 - 키 누락 횟수
_miss로 표시됨_ | +| **gitlab.transaction.event_etag_caching_middleware_used.count**
(count) | \[OpenMetrics V2\] eTag 미들웨어 접근 횟수| +| **gitlab.transaction.event_etag_caching_middleware_used_total**
(count) | \[OpenMetrics V1\] eTag 미들웨어 접근 횟수| +| **gitlab.transaction.event_etag_caching_resource_changed.count**
(count) | \[OpenMetrics V2\] etag 캐시 미스 - 변경된 리소스 횟수| +| **gitlab.transaction.event_etag_caching_resource_changed_total**
(count) | \[OpenMetrics V1\] etag 캐시 미스 - 변경된 리소스 횟수| +| **gitlab.transaction.event_fork_repository.count**
(count) | \[OpenMetrics V2\] 리포지토리 포크(RepositoryForkWorker) 총 횟수. 소스 리포지토리가 존재할 때만 증가.| +| **gitlab.transaction.event_fork_repository_total**
(count) | \[OpenMetrics V1\] 리포지토리 포크(RepositoryForkWorker) 총 횟수. 소스 리포지토리가 존재할 때만 증가.| +| **gitlab.transaction.event_import_repository.count**
(count) | \[OpenMetrics V2\] 리포지토리 가져오기 횟수 (RepositoryImportWorker)| +| **gitlab.transaction.event_import_repository_total**
(count) | \[OpenMetrics V1\] 리포지토리 가져오기 횟수(RepositoryImportWorker)| +| **gitlab.transaction.event_push_branch.count**
(count) | \[OpenMetrics V2\] 모든 브랜치 푸시 횟수| +| **gitlab.transaction.event_push_branch_total**
(count) | \[OpenMetrics V1\] 모든 브랜치 푸시 횟수| +| **gitlab.transaction.event_push_commit.count**
(count) | \[OpenMetrics V2\] 커밋 횟수| +| **gitlab.transaction.event_push_commit_total**
(count) | \[OpenMetrics V1\] 커밋 횟수| +| **gitlab.transaction.event_push_tag.count**
(count) | \[OpenMetrics V2\] 태그 푸시 횟수| +| **gitlab.transaction.event_push_tag_total**
(count) | \[OpenMetrics V1\] 태그 푸시 횟수| +| **gitlab.transaction.event_rails_exception.count**
(count) | \[OpenMetrics V2\] Rails 예외 발생 횟수| +| **gitlab.transaction.event_rails_exception_total**
(count) | \[OpenMetrics V1\] Rails 예외 발생 횟수| +| **gitlab.transaction.event_receive_email.count**
(count) | \[OpenMetrics V2\] 수신된 이메일 개수
_email로 표시됨_ | +| **gitlab.transaction.event_receive_email_total**
(count) | \[OpenMetrics V1\] 수신된 이메일 개수
_email로 표시됨_ | +| **gitlab.transaction.event_remote_mirrors_failed.count**
(count) | \[OpenMetrics V2\] 실패한 원격 미러링 개수| +| **gitlab.transaction.event_remote_mirrors_failed_total**
(count) | \[OpenMetrics V1\] 실패한 원격 미러링 개수| +| **gitlab.transaction.event_remote_mirrors_finished.count**
(count) | \[OpenMetrics V2\] 종료된 원격 미러링 개수| +| **gitlab.transaction.event_remote_mirrors_finished_total**
(count) | \[OpenMetrics V1\] 종료된 원격 미러링 개수| +| **gitlab.transaction.event_remote_mirrors_running.count**
(count) | \[OpenMetrics V2\] 실행 중인 원격 미러링 개수| +| **gitlab.transaction.event_remote_mirrors_running_total**
(count) | \[OpenMetrics V1\] 실행 중인 원격 미러링 개수| +| **gitlab.transaction.event_remove_branch.count**
(count) | \[OpenMetrics V2\] 리포지토리 브랜치 제거 횟수| +| **gitlab.transaction.event_remove_branch_total**
(count) | \[OpenMetrics V1\] 리포지토리 브랜치 제거 횟수| +| **gitlab.transaction.event_remove_repository.count**
(count) | \[OpenMetrics V2\] 리포지토리 제거 횟수| +| **gitlab.transaction.event_remove_repository_total**
(count) | \[OpenMetrics V1\] 리포지토리 제거 횟수| +| **gitlab.transaction.event_remove_tag.count**
(count) | \[OpenMetrics V2\] 어떤 리포지토리에서든 태그가 제거된 횟수| +| **gitlab.transaction.event_remove_tag_total**
(count) | \[OpenMetrics V1\] 리포지토리 태그 제거 횟수| +| **gitlab.transaction.event_sidekiq_exception.count**
(count) | \[OpenMetrics V2\] Sidekiq 예외 발생 횟수| +| **gitlab.transaction.event_sidekiq_exception_total**
(count) | \[OpenMetrics V1\] Sidekiq 예외 발생 횟수| +| **gitlab.transaction.event_stuck_import_jobs.count**
(count) | \[OpenMetrics V2\] 중단된 임포트 작업 수| +| **gitlab.transaction.event_stuck_import_jobs_total**
(count) | \[OpenMetrics V1\] 중단된 임포트 작업 수| +| **gitlab.transaction.event_update_build.count**
(count) | \[OpenMetrics V2\] API /jobs/request/:id에 대한 업데이트 빌드 개수| +| **gitlab.transaction.event_update_build_total**
(count) | \[OpenMetrics V1\] API /jobs/request/:id에 대한 업데이트 빌드 개수| +| **gitlab.transaction.new_redis_connections.count**
(count) | \[OpenMetrics V2\] 새 Redis 연결 개수
_connection으로 표시됨_ | +| **gitlab.transaction.new_redis_connections_total**
(count) | \[OpenMetrics V1\] 새 Redis 연결 개수
_connection으로 표시됨_ | +| **gitlab.transaction.queue_duration.count**
(count) | \[OpenMetrics V2\] 작업 처리 전 대기열에 있던 시간| +| **gitlab.transaction.queue_duration_total**
(count) | \[OpenMetrics V1\] 작업 처리 전 대기열에 있던 시간| +| **gitlab.transaction.rails_queue_duration_total**
(gauge) | \[OpenMetrics V1 and V2\] GitLab Workhorse가 Rail로 요청을 전달하는 데 걸리는 지연 시간| +| **gitlab.transaction.view_duration.count**
(count) | \[OpenMetrics V2\] 뷰 처리 시간| +| **gitlab.transaction.view_duration_total**
(count) | \[OpenMetrics V1\] 뷰 처리 시간| +| **gitlab.unicorn.active_connections**
(gauge) | 활성 유니콘 연결(작업자) 수
_connection으로 표시됨_ | +| **gitlab.unicorn.queued_connections**
(gauge) | 대기 중인 Unicorn 연결 수
_connection으로 표시됨_ | +| **gitlab.unicorn.workers**
(gauge) | Unicorn 작업자 수
_worker로 표시됨_ | +| **gitlab.upload_file_does_not_exist**
(count) | 업로드된 기록이 해당 파일을 찾지 못한 횟수| +| **gitlab.user_session_logins.count**
(count) | \[OpenMetrics V2\] 로그인한 사용자 수| +| **gitlab.user_session_logins_total**
(count) | \[OpenMetrics V1\] 로그인한 사용자 수| +| **gitlab.view_rendering_duration_seconds.bucket**
(count) | \[OpenMetrics V2\] 뷰 처리 시간(histogram)
_second로 표시됨_ | +| **gitlab.view_rendering_duration_seconds.count**
(count) | 뷰 처리 시간(히스토그램)| +| **gitlab.view_rendering_duration_seconds.sum**
(count) | 뷰 처리 시간 합계(히스토그램)
_second로 표시됨_ | ### 이벤트 GitLab 점검에는 이벤트가 포함되어 있지 않습니다. ### 서비스 점검 -{{< get-service-checks-from-git "gitlab" >}} - `gitlab.readiness.*` 서비스 점검에 관한 자세한 내용은 공식 [GitLab 설명서][6]를 참고하세요. -## 트러블슈팅 +**gitlab.prometheus_endpoint_up** -도움이 필요하신가요? [Datadog 지원팀][7]에 문의하세요. +점검이 GitLab 인스턴스의 Prometheus 메트릭 엔드포인트에 접근할 수 없는 경우 `CRITICAL`을 반환합니다. +_상태: ok, critical_ +**gitlab.openmetrics.health** +점검이 GitLab 인스턴스의 Prometheus 메트릭 엔드포인트에 접근할 수 없는 경우 `CRITICAL`을 반환합니다. - -## GitLab Runner 통합 +_상태: ok, critical_ -## 개요 +**gitlab.gitaly.openmetrics.health** -이 통합으로 다음을 할 수 있습니다. +점검이 GitLab 인스턴스의 Prometheus 메트릭 엔드포인트에 접근할 수 없는 경우 `CRITICAL`을 반환합니다. -- Prometheus를 통해 GitLab Runners로 수집한 메트릭 가시화 및 모니터링 -- GitLab Runner를 검증해 GitLab에 연결 +_상태: ok, critical_ -GitLab Runner와 Prometheus 통합에 관한 자세한 정보를 보려면 [GitLab Runner 설명서][8]를 참고하세요. +**gitlab.health** -## 설정 +점검이 GitLab 인스턴스에 접근할 수 없는 경우 `CRITICAL`을 반환합니다. -아래 지침을 따라 호스트에서 실행되는 에이전트에 이 점검을 설치하고 설정하세요. 컨테이너화된 환경에서 이 지침을 적용하는 데 가이드가 필요하면 [자동탐지 통합 템플릿][9]을 참고하세요. +_상태: ok, critical_ -### 설치 +**gitlab.liveness** -GitLab Runner 점검은 [Datadog 에이전트][2] 패키지에 포함되어 있으므로 GitLab 서버에 추가 설치할 필요가 없습니다. +점검이 Rails Controllers와의 교착 상태로 인해 GitLab 인스턴스에 접근할 수 없는 경우 `CRITICAL`을 반환합니다. -### 구성 +_상태: ok, critical_ -[에이전트 구성 디렉터리][10]의 루트에 있는 `conf.d/` 폴더의 `gitlab_runner.d/conf.yaml` 파일을 편집해 Runner의 Prometheus 메트릭 엔드포인트와 GitLab 마스터를 가리켜 서비스 점검을 할 수 있도록 설정하세요. 사용할 수 있는 구성 옵션 모두를 보려면 [샘플 gitlab_runner.d/conf.yaml][11]를 참고하세요. +**gitlab.readiness** -`init_config` 섹션에 있는 `allowed_metrics` 아이템을 사용하면 추출해야 하는 메트릭을 지정할 수 있습니다. 일부 메트릭은 `rate`으로 전송되어야 합니다(예: `ci_runner_errors`). +GitLab 인스턴스가 Rails Controllers를 통해 트래픽을 수신할 수 없는 경우 `CRITICAL`을 반환합니다. -### 검증 +_상태: ok, critical_ -[에이전트의 `status` 하위 명령을 실행][5]하고 점검 섹션 아래에서 `gitlab_runner`를 찾으세요. +**gitlab.readiness.master** -## 수집한 데이터 +마스터를 사용할 수 없으면 `CRITICAL`을 반환합니다. -### 메트릭 -{{< get-metrics-from-git "gitlab-runner" >}} +_상태: ok, critical, unknown_ +**gitlab.readiness.database** -### 로그 수집 +데이터베이스를 사용할 수 없으면 `CRITICAL`을 반환합니다. +_상태: ok, critical, unknown_ -1. [구성 파일][2] `gitlab_runner`에서 로그 형식을 `json`(_GitLab Runner 버전 >=11.4.0에서 사용할 수 있음)으로 바꾸세요. - ```toml - log_format = "json" - ``` +**gitlab.readiness.cache** -2. Datadog 에이전트에서는 로그 수집이 기본적으로 비활성화되어 있습니다. `datadog.yaml` 파일에서 활성화해야 합니다. +캐시를 사용할 수 없으면 `CRITICAL`을 반환합니다. - ```yaml - logs_enabled: true - ``` +_상태: ok, critical, unknown_ -3. 다음을 실행해 `systemd-journal` 그룹에 `dd-agent` 사용자를 추가하세요. - ```text - usermod -a -G systemd-journal dd-agent - ``` +**gitlab.readiness.database_load_balancing** -4. 이 구성 블록을 `gitlab_runner.d/conf.yaml` 파일에 추가해 GitLab Runner 로그를 수집하세요. +데이터베이스 로드 밸런싱을 사용할 수 없으면 `CRITICAL`을 반환합니다. - ```yaml - logs: - - type: journald - source: gitlab-runner - ``` +_상태: ok, critical, unknown_ - 사용할 수 있는 구성 옵션 모두를 보려면 [샘플 gitlab_runner.d/conf.yaml][11]을 참고하세요. +**gitlab.readiness.queues** -5. [에이전트를 다시 시작합니다][13]. +대기열을 사용할 수 없으면 `CRITICAL`을 반환합니다. -### 이벤트 +_상태: ok, critical, unknown_ -GitLab Runner 점검에는 이벤트가 포함되지 않습니다. +**gitlab.readiness.rate_limiting** -### 서비스 점검 +속도 제한을 사용할 수 없으면 `CRITICAL`을 반환합니다. + +_상태: ok, critical, unknown_ + +**gitlab.readiness.repository_cache** + +리포지토리 캐시를 사용할 수 없으면 `CRITICAL`을 반환합니다. + +_상태: ok, critical, unknown_ + +**gitlab.readiness.cluster_rate_limiting** + +클러스터 속도 제한을 사용할 수 없으면 `CRITICAL`을 반환합니다. + +_상태: ok, critical, unknown_ + +**gitlab.readiness.sessions** + +세션을 사용할 수 없으면 `CRITICAL`을 반환합니다. + +_상태: ok, critical, unknown_ + +**gitlab.readiness.shared_state** + +공유 상태를 사용할 수 없으면 `CRITICAL`을 반환합니다. + +_상태: ok, critical, unknown_ + +**gitlab.readiness.trace_chunks** + +트레이스 청크를 사용할 수 없으면 `CRITICAL`을 반환합니다. + +_상태: ok, critical, unknown_ + +**gitlab.readiness.gitaly** + +Gitaly를 사용할 수 없으면 `CRITICAL`을 반환합니다. + +_상태: ok, critical, unknown_ + +**gitlab.readiness.redis** + +Redis를 사용할 수 없으면 `CRITICAL`을 반환합니다. -GitLab Runner 점검에는 Runner와 GitLab 마스터 간 소통을 점검하는 서비스 점검과 로컬 Prometheus 엔드포인트를 사용할 수 있는지를 점검하는 서비스 점검이 포함되어 있습니다. +_상태: ok, critical, unknown_ ## 트러블슈팅 -도움이 필요하신가요? [Datadog 지원팀][7]에 문의하세요. - - -[1]: https://docs.gitlab.com/ee/administration/monitoring/prometheus -[2]: https://app.datadoghq.com/ci/getting-started -[3]: https://docs.datadoghq.com/ko/integrations/guide/versions-for-openmetrics-based-integrations -[4]: https://app.datadoghq.com/account/settings/agent/latest -[5]: https://docs.datadoghq.com/ko/agent/guide/agent-commands/#agent-status-and-information -[6]: https://docs.gitlab.com/ee/user/admin_area/monitoring/health_check.html#readiness -[7]: https://docs.datadoghq.com/ko/help/ -[8]: https://docs.gitlab.com/runner/monitoring/ -[9]: https://docs.datadoghq.com/ko/agent/kubernetes/integrations/ -[10]: https://docs.datadoghq.com/ko/agent/guide/agent-configuration-files/#agent-configuration-directory -[11]: https://github.com/DataDog/integrations-core/blob/master/gitlab_runner/datadog_checks/gitlab_runner/data/conf.yaml.example -[12]: https://docs.gitlab.com/runner/configuration/advanced-configuration.html -[13]: https://docs.datadoghq.com/ko/agent/guide/agent-commands/#start-stop-and-restart-the-agent \ No newline at end of file +도움이 필요하세요? [Datadog 지원 팀](https://docs.datadoghq.com/help/)에 문의하세요. \ No newline at end of file diff --git a/content/ko/session_replay/mobile/privacy_options.ast.json b/content/ko/session_replay/mobile/privacy_options.ast.json new file mode 100644 index 00000000000..4060594459e --- /dev/null +++ b/content/ko/session_replay/mobile/privacy_options.ast.json @@ -0,0 +1,152 @@ +{ + "$$mdtype": "Node", + "inline": false, + "attributes": { + "frontmatter": { + "title": { + "itemTranslationData": { + "5616dd60a56d7707ff962e87b9fa067f": { + "string": "모바일 세션 리플레이 개인정보 보호 옵션" + } + } + }, + "description": { + "itemTranslationData": { + "9a8116f7e8910bb98e4fc9efbabdc973": { + "string": "모바일 세션 재생을 위한 개인정보 보호 옵션을 설정합니다." + } + } + }, + "further_reading": { + "listTranslationData": { + "0": { + "link": "/session_replay/mobile", + "text": { + "itemTranslationData": { + "fb162115e8af8f878d9e5707abe12e1e": { + "string": "Mobile Session Replay" + } + } + }, + "tag": { + "itemTranslationData": { + "338fba5fc2188734d593c57bde09df32": { + "string": "설명서" + } + } + } + }, + "1": { + "link": "/session_replay/mobile/app_performance", + "text": { + "itemTranslationData": { + "3bad2c19ca0a83a38ff776b95e1f8a4b": { + "string": "모바일 세션 리플레이이 앱 성능에 미치는 영향" + } + } + }, + "tag": { + "itemTranslationData": { + "338fba5fc2188734d593c57bde09df32": { + "string": "설명서" + } + } + } + }, + "2": { + "link": "/session_replay/mobile/setup_and_configuration", + "text": { + "itemTranslationData": { + "691d661ed1349ca1ba794d2bad6739f0": { + "string": "모바일 세션 리플레이 설정 및 구성" + } + } + }, + "tag": { + "itemTranslationData": { + "338fba5fc2188734d593c57bde09df32": { + "string": "설명서" + } + } + } + }, + "3": { + "link": "/session_replay/mobile/troubleshooting", + "text": { + "itemTranslationData": { + "bf16cd1a410957692c82abe14fad0152": { + "string": "모바일 세션 리플레이 문제 해결" + } + } + }, + "tag": { + "itemTranslationData": { + "338fba5fc2188734d593c57bde09df32": { + "string": "설명서" + } + } + } + }, + "4": { + "link": "/session_replay", + "text": { + "itemTranslationData": { + "6336fd746bcc46c6aa4d199a6266c29e": { + "string": "Session Replay" + } + } + }, + "tag": { + "itemTranslationData": { + "338fba5fc2188734d593c57bde09df32": { + "string": "설명서" + } + } + } + } + } + }, + "content_filters": { + "listTranslationData": { + "0": { + "label": "SDK", + "trait_id": "platform", + "option_group_id": "rum_sdk_platform_options_v2" + } + } + } + } + }, + "children": { + "listTranslationData": { + "0": { + "$$mdtype": "Node", + "inline": false, + "attributes": { + "file": "real_user_monitoring/session_replay/mobile/privacy_options.mdoc.md" + }, + "children": { + "listTranslationData": {} + }, + "type": "tag", + "tag": "partial", + "annotations": { + "listTranslationData": { + "0": { + "type": "attribute", + "name": "file", + "value": "real_user_monitoring/session_replay/mobile/privacy_options.mdoc.md" + } + } + }, + "slots": {}, + "location": "line 28-29" + } + } + }, + "type": "document", + "annotations": { + "listTranslationData": {} + }, + "slots": {} +} \ No newline at end of file diff --git a/content/ko/session_replay/mobile/setup_and_configuration.ast.json b/content/ko/session_replay/mobile/setup_and_configuration.ast.json new file mode 100644 index 00000000000..2c389261be6 --- /dev/null +++ b/content/ko/session_replay/mobile/setup_and_configuration.ast.json @@ -0,0 +1,169 @@ +{ + "$$mdtype": "Node", + "inline": false, + "attributes": { + "frontmatter": { + "title": { + "itemTranslationData": { + "09c427f36471a9777800731d4c8fba9f": { + "string": "모바일 세션 리플레이 설치 및 설정" + } + } + }, + "description": { + "itemTranslationData": { + "c11aab16f8a3104ac69f99734e4a7013": { + "string": "모바일 세션 리플레이을 설치하고 설정합니다." + } + } + }, + "further_reading": { + "listTranslationData": { + "0": { + "link": "/session_replay/mobile/", + "text": { + "itemTranslationData": { + "ce6c3c781d75059f7fbe7186661b96e0": { + "string": "Mobile Session Replay" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "설명서" + } + } + } + }, + "1": { + "link": "/session_replay/mobile/app_performance", + "text": { + "itemTranslationData": { + "ab35b85db736ffd1e461c8485e401308": { + "string": "모바일 세션 리플레이이 앱 성능에 미치는 영향" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "설명서" + } + } + } + }, + "2": { + "link": "/session_replay/mobile/privacy_options", + "text": { + "itemTranslationData": { + "26506d24bb1c399504571e1615425fb5": { + "string": "모바일 세션 리플레이 개인정보 보호 옵션" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "설명서" + } + } + } + }, + "3": { + "link": "/session_replay/mobile/troubleshooting", + "text": { + "itemTranslationData": { + "5615d411d465239fa5a76720ca89152c": { + "string": "모바일 세션 리플레이 문제 해결" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "설명서" + } + } + } + }, + "4": { + "link": "/session_replay/", + "text": { + "itemTranslationData": { + "ab99140e610ac1c9552fe9f07fdff5ce": { + "string": "Session Replay" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "설명서" + } + } + } + }, + "5": { + "link": "/real_user_monitoring/application_monitoring/android/web_view_tracking", + "text": { + "itemTranslationData": { + "16c1b8bece3356f2a9e5c6bc5d607bc7": { + "string": "웹 보기 추적" + } + } + }, + "tag": { + "itemTranslationData": { + "fd7fd4bbe708f2696924cb45bb55028c": { + "string": "설명서" + } + } + } + } + } + }, + "content_filters": { + "listTranslationData": { + "0": { + "label": "SDK", + "trait_id": "platform", + "option_group_id": "rum_session_replay_sdk_options" + } + } + } + } + }, + "children": { + "listTranslationData": { + "0": { + "$$mdtype": "Node", + "inline": false, + "attributes": { + "file": "real_user_monitoring/session_replay/setup_and_configuration.mdoc.md" + }, + "children": { + "listTranslationData": {} + }, + "type": "tag", + "tag": "partial", + "annotations": { + "listTranslationData": { + "0": { + "type": "attribute", + "name": "file", + "value": "real_user_monitoring/session_replay/setup_and_configuration.mdoc.md" + } + } + }, + "slots": {}, + "location": "line 28-29" + } + } + }, + "type": "document", + "annotations": { + "listTranslationData": {} + }, + "slots": {} +} \ No newline at end of file