Distribution에는 값의 모집단에 대한 요약 통계가 포함됩니다. 선택적으로 버킷 집합에 대한 값의 분포를 나타내는 히스토그램이 포함되어 있습니다.
요약 통계는 값 모집단 집합의 개수, 평균, 평균으로부터의 제곱 편차 합계, 최솟값, 최댓값입니다. 히스토그램은 버킷 시퀀스를 기반으로 하며 각 버킷에 속하는 값의 개수를 제공합니다. 버킷의 경계는 명시적으로 지정되거나 너비가 고정되거나 기하급수적으로 증가하는 버킷의 공식으로 지정됩니다.
금지되지는 않지만 값 모집단에 유한하지 않은 값 (무한대 또는 NaN)을 포함하면 mean 및 sumOfSquaredDeviation 필드가 무의미해지므로 일반적으로 좋지 않습니다.
| JSON 표현 |
|---|
{ "count": string, "mean": number, "sumOfSquaredDeviation": number, "range": { object ( |
| 필드 | |
|---|---|
count |
모집단의 값 수입니다. Must be non-negative. 히스토그램이 제공된 경우 이 값은 |
mean |
모집단에 있는 값의 산술 평균입니다. |
sumOfSquaredDeviation |
모집단에 있는 값의 평균에서 제곱 편차의 합계 값 x_i의 경우 다음과 같습니다. Knuth, 'The Art of Computer Programming', Vol. 2, page 232, 3rd edition에서는 한 번의 패스로 이 합계를 누적하는 Welford의 방법을 설명합니다.
|
range |
지정된 경우 모집단 값의 범위를 포함합니다. |
bucketOptions |
히스토그램 버킷 경계를 정의합니다. 분포에 히스토그램이 포함되지 않은 경우 이 필드를 생략합니다. |
bucketCounts[] |
이 값이 있는 경우
|
exemplars[] |
|
범위
모집단 값의 범위입니다.
| JSON 표현 |
|---|
{ "min": number, "max": number } |
| 필드 | |
|---|---|
min |
모집단 값의 최솟값입니다. |
max |
모집단 값의 최댓값입니다. |
BucketOptions
BucketOptions는 분포의 히스토그램을 만드는 데 사용되는 버킷 경계를 설명합니다. 버킷은 선형 시퀀스, 지수 시퀀스일 수 있으며 각 버킷을 명시적으로 지정할 수도 있습니다. BucketOptions에는 각 버킷의 값 수가 포함되지 않습니다.
버킷에는 해당 버킷에 대해 집계되는 값의 하한값(포함)과 상한값(제외)이 있습니다. 버킷의 상한은 하한보다 엄격하게 커야 합니다. 분포의 N 버킷 시퀀스는 언더플로 버킷 (번호 0), 0개 이상의 유한 버킷 (번호 1~N-2), 오버플로 버킷 (번호 N-1)으로 구성됩니다. 버킷은 연속적입니다. 버킷 i (i > 0)의 하한은 버킷 i - 1의 상한과 동일합니다. 버킷은 유한 값의 전체 범위를 포함합니다. 언더플로 버킷의 하한은 -무한대이고 오버플로 버킷의 상한은 +무한대입니다. 유한 버킷은 두 경계가 모두 유한하기 때문에 이러한 이름이 붙었습니다.
| JSON 표현 |
|---|
{ // Union field |
| 필드 | |
|---|---|
통합 필드 options. 이 세 필드 중 정확히 하나를 설정해야 합니다. options은 다음 중 하나여야 합니다. |
|
linearBuckets |
선형 버킷입니다. |
exponentialBuckets |
지수 버킷입니다. |
explicitBuckets |
명시적 버킷입니다. |
선형
오버플로와 언더플로를 제외하고 너비가 모두 동일한 버킷의 선형 시퀀스를 지정합니다. 각 버킷은 버킷의 특정 값에 대한 일정한 절대 불확실성을 나타냅니다.
버킷은 numFiniteBuckets + 2 (= N)개입니다. 버킷 i의 경계는 다음과 같습니다.
상한값 (0 <= i < N-1): 오프셋 + (너비 * i)
하한값 (1 <= i < N): 오프셋 + (너비 * (i - 1))
| JSON 표현 |
|---|
{ "numFiniteBuckets": integer, "width": number, "offset": number } |
| 필드 | |
|---|---|
numFiniteBuckets |
0보다 커야 합니다. |
width |
0보다 커야 합니다. |
offset |
첫 번째 버킷의 하한입니다. |
지수
하한 값에 비례하는 너비가 있는 버킷의 지수 시퀀스를 지정합니다. 각 버킷은 버킷의 특정 값에 대한 일정한 상대적 불확실성을 나타냅니다.
버킷은 numFiniteBuckets + 2 (= N)개입니다. 버킷 i의 경계는 다음과 같습니다.
상한값 (0 <= i < N-1): scale * (growthFactor ^ i)
하한값 (1 <= i < N): scale * (growthFactor ^ (i - 1))
| JSON 표현 |
|---|
{ "numFiniteBuckets": integer, "growthFactor": number, "scale": number } |
| 필드 | |
|---|---|
numFiniteBuckets |
0보다 커야 합니다. |
growthFactor |
1보다 커야 합니다. |
scale |
0보다 커야 합니다. |
명시적
임의 너비의 버킷 집합을 지정합니다.
버킷은 size(bounds) + 1 (= N)개입니다. 버킷 i의 경계는 다음과 같습니다.
상한값 (0 <= i < N-1): bounds[i] 하한값 (1 <= i < N): bounds[i - 1]
bounds 필드는 하나 이상의 요소를 포함해야 합니다. bounds에 요소가 하나만 있으면 유한 버킷이 없으며 해당 단일 요소가 오버플로 및 언더플로 버킷의 공통 경계입니다.
| JSON 표현 |
|---|
{ "bounds": [ number ] } |
| 필드 | |
|---|---|
bounds[] |
값은 단조롭게 증가해야 합니다. |
Exemplar
특히 집계된 분포 값을 주석으로 처리하는 데 사용할 수 있는 예시가 있습니다. 분포 버킷에 추가된 특정 값에 관한 정보를 제공하는 메타데이터입니다(예: 값이 추가될 때 활성 상태였던 추적 ID). 예시 값, 타임스탬프, 출처 등 추가 정보가 포함될 수 있습니다.
| JSON 표현 |
|---|
{ "value": number, "timestamp": string, "attachments": [ { "@type": string, field1: ..., ... } ] } |
| 필드 | |
|---|---|
value |
예시 포인트의 값입니다. 이 값은 예시가 속한 버킷을 결정합니다. |
timestamp |
위 값의 관측 (샘플링) 시간입니다. 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
attachments[] |
예시 값에 관한 컨텍스트 정보입니다. 예를 들면 다음과 같습니다. 추적: type.googleapis.com/google.monitoring.v3.SpanContext 리터럴 문자열: type.googleapis.com/google.protobuf.StringValue 집계 중에 삭제된 라벨: type.googleapis.com/google.monitoring.v3.DroppedLabels 단일 예시에는 특정 메시지 유형의 첨부파일이 하나만 있을 수 있으며 이는 시스템에 의해 적용됩니다. 임의 유형의 필드를 포함하는 객체입니다. 추가 필드 |