Skip to content

[exporter/loadbalancing] add attributes details for internal telemetry #39639

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 31 additions & 0 deletions exporter/loadbalancingexporter/documentation.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,12 @@ Response latency in ms for the backends.
| ---- | ----------- | ---------- |
| ms | Histogram | Int |

#### Attributes

| Name | Description | Values |
| ---- | ----------- | ------ |
| endpoint | The endpoint of the backend | Any Str |

### otelcol_loadbalancer_backend_outcome

Number of successes and failures for each endpoint.
Expand All @@ -22,6 +28,12 @@ Number of successes and failures for each endpoint.
| ---- | ----------- | ---------- | --------- |
| {outcomes} | Sum | Int | true |

#### Attributes

| Name | Description | Values |
| ---- | ----------- | ------ |
| success | Whether an outcome was successful | Any Bool |

### otelcol_loadbalancer_num_backend_updates

Number of times the list of backends was updated.
Expand All @@ -30,6 +42,12 @@ Number of times the list of backends was updated.
| ---- | ----------- | ---------- | --------- |
| {updates} | Sum | Int | true |

#### Attributes

| Name | Description | Values |
| ---- | ----------- | ------ |
| resolver | Resolver used | Str: ``aws``, ``dns``, ``k8s``, ``static`` |

### otelcol_loadbalancer_num_backends

Current number of backends in use.
Expand All @@ -38,10 +56,23 @@ Current number of backends in use.
| ---- | ----------- | ---------- |
| {backends} | Gauge | Int |

#### Attributes

| Name | Description | Values |
| ---- | ----------- | ------ |
| resolver | Resolver used | Str: ``aws``, ``dns``, ``k8s``, ``static`` |

### otelcol_loadbalancer_num_resolutions

Number of times the resolver has triggered new resolutions.

| Unit | Metric Type | Value Type | Monotonic |
| ---- | ----------- | ---------- | --------- |
| {resolutions} | Sum | Int | true |

#### Attributes

| Name | Description | Values |
| ---- | ----------- | ------ |
| success | Whether an outcome was successful | Any Bool |
| resolver | Resolver used | Str: ``aws``, ``dns``, ``k8s``, ``static`` |
49 changes: 35 additions & 14 deletions exporter/loadbalancingexporter/metadata.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,54 +11,75 @@ status:
emeritus: [jpkrohling]
seeking_new: true

tests:
config:
routing_key: "service"
protocol:
otlp:
timeout: 1s
resolver:
static:
hostnames:
- backend-1:4317
- backend-2:4317
- backend-3:4317
- backend-4:4317
expect_consumer_error: true
attributes:
success:
description: Whether an outcome was successful
type: bool
resolver:
description: Resolver used
type: string
enum:
- aws
- dns
- k8s
- static
endpoint:
description: The endpoint of the backend
type: string

telemetry:
metrics:
loadbalancer_num_resolutions:
attributes: [success, resolver]
enabled: true
description: Number of times the resolver has triggered new resolutions.
unit: "{resolutions}"
sum:
value_type: int
monotonic: true
loadbalancer_num_backends:
attributes: [resolver]
enabled: true
description: Current number of backends in use.
unit: "{backends}"
gauge:
value_type: int
loadbalancer_backend_latency:
attributes: [endpoint]
enabled: true
description: Response latency in ms for the backends.
unit: ms
histogram:
value_type: int
bucket_boundaries: [5, 10, 20, 50, 100, 200, 500, 1000, 2000, 5000]
loadbalancer_num_backend_updates:
attributes: [resolver]
enabled: true
description: Number of times the list of backends was updated.
unit: "{updates}"
sum:
value_type: int
monotonic: true
loadbalancer_backend_outcome:
attributes: [success]
enabled: true
description: Number of successes and failures for each endpoint.
unit: "{outcomes}"
sum:
value_type: int
monotonic: true

tests:
config:
routing_key: "service"
protocol:
otlp:
timeout: 1s
resolver:
static:
hostnames:
- backend-1:4317
- backend-2:4317
- backend-3:4317
- backend-4:4317
expect_consumer_error: true
Loading