InfoGrab DocsInfoGrab Docs

GitLab 표준 컨텍스트 필드

요약

표준 컨텍스트는 Cloud context라고도 하며, GitLab Standard Context 스키마에서 사용할 수 있는 모든 필드를 설명합니다. 표준 컨텍스트에 새 필드를 추가하는 절차는 다음과 같습니다.

표준 컨텍스트는 Cloud context라고도 하며, GitLab Standard Context 스키마에서 사용할 수 있는 모든 필드를 설명합니다.

필수 필드#

필드 타입 설명 예시
environment string 소스 환경의 이름입니다. "production", "staging"

선택 필드#

필드 타입 설명 예시
project_id integer, null 연결된 프로젝트의 ID 입니다. 프로젝트 경로 안에서 추적이 이루어질 때 사용할 수 있습니다. (예: GitLab 프로젝트) 12345
namespace_id integer, null 연결된 네임스페이스의 ID 입니다. 그룹 경로 안에서 추적이 이루어질 때 사용할 수 있습니다. (예: GitLab-org) 67890
ultimate_parent_namespace_id integer, null 연결된 네임스페이스의 최상위 부모 네임스페이스 ID 입니다. 이벤트의 네임스페이스 ID를 알 수 있을 때 사용할 수 있습니다 67869
user_id integer, null 연결된 사용자의 ID 입니다. Snowplow 인리처에서 가명 처리됩니다. 메트릭 사전을 참고합니다. longhash
global_user_id string, null 인스턴스 전반에서 고유한, 익명화된 user_id 해시입니다. longhash
is_gitlab_team_member boolean, null 해당 작업이 GitLab 팀 구성원에 의해 트리거되었는지 나타냅니다. true, false
user_type string, null 사람의 사용과 봇의 사용을 구분합니다. "human", "bot"
organization_id integer, null 연결된 조직의 ID 입니다. 조직 경로 안에서 추적이 이루어질 때 사용할 수 있습니다. (예: GitLab-org) 1011

인스턴스 정보#

필드 타입 설명 예시
instance_id string, null 요청이 발생한 GitLab 인스턴스의 ID 입니다. instance_long_uuid
unique_instance_id string, null 요청이 발생한 GitLab 인스턴스의 고유 ID 입니다. instance_long_uuid
host_name string, null GitLab 인스턴스의 호스트명입니다. "gitlab-host-id"
instance_version string, null GitLab 인스턴스의 버전입니다. "15.8.0"
realm string, null GitLab의 배포 유형입니다. "self-managed", "saas", "dedicated" 중 하나여야 합니다. "saas"
deployment_type string, null GitLab의 배포 유형입니다. "dedicated" 값을 보내지 않던 realm을 대체하기 위해 만들어졌습니다. "self-managed", ".com", "dedicated" 중 하나여야 합니다. ".com"

클라이언트 정보#

필드 타입 설명 예시
client_name string, null 요청을 보내는 클라이언트의 이름입니다. "chrome", "jetbrains"
client_version string, null 클라이언트의 버전입니다. "108.0.5359.124"
client_type string, null 클라이언트의 유형입니다. "browser", "ide"
interface string, null 요청이 시작된 인터페이스입니다. "Duo Chat"

기능 및 플랜 정보#

필드 타입 설명 예시
feature_category string, null 해당 기능이 속한 카테고리입니다. "duo_chat"
feature_enabled_by_namespace_ids array, null 사용자가 추적 대상 기능을 사용할 수 있게 하는 네임스페이스 ID 목록입니다. [123, 456, 789]
feature_enablement_type string, null 기능이 활성화된 방식입니다. "duo_core", "duo_pro", "duo_enterprise", "duo_with_amazon_q"
plan string, null 구독 플랜의 이름입니다(최대 길이: 32자). "free", "ultimate"

추적 및 컨텍스트#

필드 타입 설명 예시
source string, null 소스 애플리케이션의 이름입니다. "gitlab-rails", "gitlab-javascript"
app_id string, null 애플리케이션 식별자입니다. "gitlab_duo_workflow", "gitlab"
google_analytics_id string, null 마케팅 사이트의 Google Analytics ID 입니다. "UA-XXXXXXXX-X"
context_generated_at string, null 컨텍스트가 생성된 시점을 나타내는 타임스탬프입니다. "2023-12-20T10:00:00Z"
correlation_id string, null 각 요청의 고유 요청 ID 입니다. uuid
extra object, null 이벤트와 연결된 추가 데이터이며, 키-값 쌍 형식입니다. {"key": "value"}

표준 컨텍스트에 새 필드 추가#

표준 컨텍스트에 새 필드를 추가하는 절차는 다음과 같습니다.

  1. iglu 리포지터리에 스키마를 갱신하는 머지 리퀘스트를 생성합니다.
  2. 새 필드를 가명 처리해야 한다면 snowplow-pseudonymization 프로젝트의 ATTRIBUTE_TO_PSEUDONYMISE 상수에 추가합니다.
  3. tracking/standard_context.rb의 GITLAB_STANDARD_SCHEMA_URL을 gitlab-org/iglu의 새 버전에 맞게 갱신합니다.
  4. 표준 컨텍스트에 새 필드를 포함한 이벤트를 전송하기 시작합니다.

관련 주제#

  • Unit Primitive에 대한 설명은 cloud connector에 문서화되어 있습니다.

GitLab 표준 컨텍스트 필드

GitLab v19.4
원문 보기

요약

표준 컨텍스트는 Cloud context라고도 하며, GitLab Standard Context 스키마에서 사용할 수 있는 모든 필드를 설명합니다. 표준 컨텍스트에 새 필드를 추가하는 절차는 다음과 같습니다.

표준 컨텍스트는 Cloud context라고도 하며, GitLab Standard Context 스키마에서 사용할 수 있는 모든 필드를 설명합니다.

필수 필드#

필드 타입 설명 예시
environment string 소스 환경의 이름입니다. "production", "staging"

선택 필드#

필드 타입 설명 예시
project_id integer, null 연결된 프로젝트의 ID 입니다. 프로젝트 경로 안에서 추적이 이루어질 때 사용할 수 있습니다. (예: GitLab 프로젝트) 12345
namespace_id integer, null 연결된 네임스페이스의 ID 입니다. 그룹 경로 안에서 추적이 이루어질 때 사용할 수 있습니다. (예: GitLab-org) 67890
ultimate_parent_namespace_id integer, null 연결된 네임스페이스의 최상위 부모 네임스페이스 ID 입니다. 이벤트의 네임스페이스 ID를 알 수 있을 때 사용할 수 있습니다 67869
user_id integer, null 연결된 사용자의 ID 입니다. Snowplow 인리처에서 가명 처리됩니다. 메트릭 사전을 참고합니다. longhash
global_user_id string, null 인스턴스 전반에서 고유한, 익명화된 user_id 해시입니다. longhash
is_gitlab_team_member boolean, null 해당 작업이 GitLab 팀 구성원에 의해 트리거되었는지 나타냅니다. true, false
user_type string, null 사람의 사용과 봇의 사용을 구분합니다. "human", "bot"
organization_id integer, null 연결된 조직의 ID 입니다. 조직 경로 안에서 추적이 이루어질 때 사용할 수 있습니다. (예: GitLab-org) 1011

인스턴스 정보#

필드 타입 설명 예시
instance_id string, null 요청이 발생한 GitLab 인스턴스의 ID 입니다. instance_long_uuid
unique_instance_id string, null 요청이 발생한 GitLab 인스턴스의 고유 ID 입니다. instance_long_uuid
host_name string, null GitLab 인스턴스의 호스트명입니다. "gitlab-host-id"
instance_version string, null GitLab 인스턴스의 버전입니다. "15.8.0"
realm string, null GitLab의 배포 유형입니다. "self-managed", "saas", "dedicated" 중 하나여야 합니다. "saas"
deployment_type string, null GitLab의 배포 유형입니다. "dedicated" 값을 보내지 않던 realm을 대체하기 위해 만들어졌습니다. "self-managed", ".com", "dedicated" 중 하나여야 합니다. ".com"

클라이언트 정보#

필드 타입 설명 예시
client_name string, null 요청을 보내는 클라이언트의 이름입니다. "chrome", "jetbrains"
client_version string, null 클라이언트의 버전입니다. "108.0.5359.124"
client_type string, null 클라이언트의 유형입니다. "browser", "ide"
interface string, null 요청이 시작된 인터페이스입니다. "Duo Chat"

기능 및 플랜 정보#

필드 타입 설명 예시
feature_category string, null 해당 기능이 속한 카테고리입니다. "duo_chat"
feature_enabled_by_namespace_ids array, null 사용자가 추적 대상 기능을 사용할 수 있게 하는 네임스페이스 ID 목록입니다. [123, 456, 789]
feature_enablement_type string, null 기능이 활성화된 방식입니다. "duo_core", "duo_pro", "duo_enterprise", "duo_with_amazon_q"
plan string, null 구독 플랜의 이름입니다(최대 길이: 32자). "free", "ultimate"

추적 및 컨텍스트#

필드 타입 설명 예시
source string, null 소스 애플리케이션의 이름입니다. "gitlab-rails", "gitlab-javascript"
app_id string, null 애플리케이션 식별자입니다. "gitlab_duo_workflow", "gitlab"
google_analytics_id string, null 마케팅 사이트의 Google Analytics ID 입니다. "UA-XXXXXXXX-X"
context_generated_at string, null 컨텍스트가 생성된 시점을 나타내는 타임스탬프입니다. "2023-12-20T10:00:00Z"
correlation_id string, null 각 요청의 고유 요청 ID 입니다. uuid
extra object, null 이벤트와 연결된 추가 데이터이며, 키-값 쌍 형식입니다. {"key": "value"}

표준 컨텍스트에 새 필드 추가#

표준 컨텍스트에 새 필드를 추가하는 절차는 다음과 같습니다.

  1. iglu 리포지터리에 스키마를 갱신하는 머지 리퀘스트를 생성합니다.
  2. 새 필드를 가명 처리해야 한다면 snowplow-pseudonymization 프로젝트의 ATTRIBUTE_TO_PSEUDONYMISE 상수에 추가합니다.
  3. tracking/standard_context.rb의 GITLAB_STANDARD_SCHEMA_URL을 gitlab-org/iglu의 새 버전에 맞게 갱신합니다.
  4. 표준 컨텍스트에 새 필드를 포함한 이벤트를 전송하기 시작합니다.

관련 주제#

  • Unit Primitive에 대한 설명은 cloud connector에 문서화되어 있습니다.