Skip to content

Commit f48f34a

Browse files
authored
Merge pull request #88479 from max-cx/OBSDOCS-1617
OBSDOCS-1617,OBSDOCS-1615,OBSDOCS-1616: Docs for TP features: AWS CloudWatch Exporter, AWS EMF Exporter, AWS X-Ray Exporter
2 parents 57c62a6 + 45b3476 commit f48f34a

File tree

1 file changed

+157
-0
lines changed

1 file changed

+157
-0
lines changed

observability/otel/otel-collector/otel-collector-exporters.adoc

Lines changed: 157 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,9 @@ Currently, the following General Availability and Technology Preview exporters a
1717
- xref:../../../observability/otel/otel-collector/otel-collector-exporters.adoc#prometheus-exporter_otel-collector-exporters[Prometheus Exporter]
1818
- xref:../../../observability/otel/otel-collector/otel-collector-exporters.adoc#prometheus-remote-write-exporter_otel-collector-exporters[Prometheus Remote Write Exporter]
1919
- xref:../../../observability/otel/otel-collector/otel-collector-exporters.adoc#kafka-exporter_otel-collector-exporters[Kafka Exporter]
20+
- xref:../../../observability/otel/otel-collector/otel-collector-exporters.adoc#aws-cloudwatch-exporter_otel-collector-exporters[AWS CloudWatch Exporter]
21+
- xref:../../../observability/otel/otel-collector/otel-collector-exporters.adoc#aws-emf-exporter_otel-collector-exporters[AWS EMF Exporter]
22+
- xref:../../../observability/otel/otel-collector/otel-collector-exporters.adoc#aws-xray-exporter_otel-collector-exporters[AWS X-Ray Exporter]
2023
2124
[id="otlp-exporter_{context}"]
2225
== OTLP Exporter
@@ -290,6 +293,160 @@ include::snippets/technology-preview.adoc[]
290293
<6> Disables verifying the server's certificate chain and host name. The default is `+false+`.
291294
<7> ServerName indicates the name of the server requested by the client to support virtual hosting.
292295

296+
[id="aws-cloudwatch-exporter_{context}"]
297+
== AWS CloudWatch Logs Exporter
298+
299+
The AWS CloudWatch Logs Exporter sends logs data to the Amazon CloudWatch Logs service and signs requests by using the AWS SDK for Go and the default credential provider chain.
300+
301+
:FeatureName: The AWS CloudWatch Logs Exporter
302+
include::snippets/technology-preview.adoc[]
303+
304+
.OpenTelemetry Collector custom resource with the enabled AWS CloudWatch Logs Exporter
305+
[source,yaml]
306+
----
307+
# ...
308+
config:
309+
exporters:
310+
awscloudwatchlogs:
311+
log_group_name: "<group_name_of_amazon_cloudwatch_logs>" # <1>
312+
log_stream_name: "<log_stream_of_amazon_cloudwatch_logs>" # <2>
313+
region: <aws_region_of_log_stream> # <3>
314+
endpoint: <service_endpoint_of_amazon_cloudwatch_logs> # <4>
315+
log_retention: <supported_value_in_days> # <5>
316+
# ...
317+
----
318+
<1> Required. If the log group does not exist yet, it is automatically created.
319+
<2> Required. If the log stream does not exist yet, it is automatically created.
320+
<3> Optional. If the AWS region is not already set in the default credential chain, you must specify it.
321+
<4> Optional. You can override the default Amazon CloudWatch Logs service endpoint to which the requests are forwarded. For the list of service endpoints by region, see link:https://docs.aws.amazon.com/general/latest/gr/cwl_region.html[Amazon CloudWatch Logs endpoints and quotas] (AWS General Reference).
322+
<5> Optional. With this parameter, you can set the log retention policy for new Amazon CloudWatch log groups. If this parameter is omitted or set to `0`, the logs never expire by default. Supported values for retention in days are `1`, `3`, `5`, `7`, `14`, `30`, `60`, `90`, `120`, `150`, `180`, `365`, `400`, `545`, `731`, `1827`, `2192`, `2557`, `2922`, `3288`, or `3653`.
323+
324+
[role="_additional-resources"]
325+
.Additional resources
326+
* link:https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html[What is Amazon CloudWatch Logs?] (Amazon CloudWatch Logs User Guide)
327+
* link:https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials[Specifying Credentials] (AWS SDK for Go Developer Guide)
328+
// * link:https://docs.aws.amazon.com/sdk-for-go/v2/developer-guide/configure-auth.html[Configure Authentication] (AWS SDK for Go v2 Developer Guide)
329+
* link:https://docs.aws.amazon.com/general/latest/gr/cwl_region.html[Amazon CloudWatch Logs endpoints and quotas] (AWS General Reference)
330+
331+
[id="aws-emf-exporter_{context}"]
332+
== AWS EMF Exporter
333+
334+
The AWS EMF Exporter converts the following OpenTelemetry metrics datapoints to the AWS CloudWatch Embedded Metric Format (EMF):
335+
336+
- `Int64DataPoints`
337+
- `DoubleDataPoints`
338+
- `SummaryDataPoints`
339+
340+
The EMF metrics are then sent directly to the Amazon CloudWatch Logs service by using the `PutLogEvents` API.
341+
342+
One of the benefits of using this exporter is the possibility to view logs and metrics in the Amazon CloudWatch console at link:https://console.aws.amazon.com/cloudwatch/[].
343+
344+
:FeatureName: The AWS EMF Exporter
345+
include::snippets/technology-preview.adoc[]
346+
347+
.OpenTelemetry Collector custom resource with the enabled AWS EMF Exporter
348+
[source,yaml]
349+
----
350+
# ...
351+
config:
352+
exporters:
353+
awsemf:
354+
log_group_name: "<group_name_of_amazon_cloudwatch_logs>" # <1>
355+
log_stream_name: "<log_stream_of_amazon_cloudwatch_logs>" # <2>
356+
resource_to_telemetry_conversion: # <3>
357+
enabled: true
358+
region: <region> # <4>
359+
endpoint: <endpoint> # <5>
360+
log_retention: <supported_value_in_days> # <6>
361+
namespace: <custom_namespace> # <7>
362+
# ...
363+
----
364+
<1> Customized log group name.
365+
<2> Customized log stream name.
366+
<3> Optional. Converts resource attributes to telemetry attributes such as metric labels. Disabled by default.
367+
<4> The AWS region of the log stream. If a region is not already set in the default credential provider chain, you must specify the region.
368+
<5> Optional. You can override the default Amazon CloudWatch Logs service endpoint to which the requests are forwarded. For the list of service endpoints by region, see link:https://docs.aws.amazon.com/general/latest/gr/cwl_region.html[Amazon CloudWatch Logs endpoints and quotas] (AWS General Reference).
369+
<6> Optional. With this parameter, you can set the log retention policy for new Amazon CloudWatch log groups. If this parameter is omitted or set to `0`, the logs never expire by default. Supported values for retention in days are `1`, `3`, `5`, `7`, `14`, `30`, `60`, `90`, `120`, `150`, `180`, `365`, `400`, `545`, `731`, `1827`, `2192`, `2557`, `2922`, `3288`, or `3653`.
370+
<7> Optional. A custom namespace for the Amazon CloudWatch metrics.
371+
372+
[discrete]
373+
[id="log-group-name_{context}"]
374+
=== Log group name
375+
376+
The `log_group_name` parameter allows you to customize the log group name and supports the default `+/metrics/default+` value or the following placeholders:
377+
378+
`+/aws/metrics/{ClusterName}+`:: This placeholder is used to search for the `ClusterName` or `+aws.ecs.cluster.name+` resource attribute in the metrics data and replace it with the actual cluster name.
379+
380+
`+{NodeName}+`:: This placeholder is used to search for the `NodeName` or `+k8s.node.name+` resource attribute.
381+
382+
`+{TaskId}+`:: This placeholder is used to search for the `TaskId` or `+aws.ecs.task.id+` resource attribute.
383+
384+
If no resource attribute is found in the resource attribute map, the placeholder is replaced by the `undefined` value.
385+
386+
[discrete]
387+
[id="log-stream-name_{context}"]
388+
=== Log stream name
389+
390+
The `log_stream_name` parameter allows you to customize the log stream name and supports the default `+otel-stream+` value or the following placeholders:
391+
392+
`+{ClusterName}+`:: This placeholder is used to search for the `+ClusterName+` or `+aws.ecs.cluster.name+` resource attribute.
393+
394+
`+{ContainerInstanceId}+`:: This placeholder is used to search for the `+ContainerInstanceId+` or `+aws.ecs.container.instance.id+` resource attribute. This resource attribute is valid only for the AWS ECS EC2 launch type.
395+
396+
`+{NodeName}+`:: This placeholder is used to search for the `+NodeName+` or `+k8s.node.name+` resource attribute.
397+
398+
`+{TaskDefinitionFamily}+`:: This placeholder is used to search for the `+TaskDefinitionFamily+` or `+aws.ecs.task.family+` resource attribute.
399+
400+
`+{TaskId}+`:: This placeholder is used to search for the `TaskId` or `+aws.ecs.task.id+` resource attribute in the metrics data and replace it with the actual task ID.
401+
402+
If no resource attribute is found in the resource attribute map, the placeholder is replaced by the `undefined` value.
403+
404+
[role="_additional-resources"]
405+
.Additional resources
406+
* link:https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Embedded_Metric_Format_Specification.html[Specification: Embedded metric format] (Amazon CloudWatch User Guide)
407+
* link:https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutLogEvents.html[PutLogEvents] (Amazon CloudWatch Logs API Reference)
408+
* link:https://docs.aws.amazon.com/general/latest/gr/cwl_region.html[Amazon CloudWatch Logs endpoints and quotas] (AWS General Reference)
409+
410+
[id="aws-xray-exporter_{context}"]
411+
== AWS X-Ray Exporter
412+
413+
The AWS X-Ray Exporter converts OpenTelemetry spans to AWS X-Ray Segment Documents and then sends them directly to the AWS X-Ray service. The AWS X-Ray Exporter uses the `PutTraceSegments` API and signs requests by using the AWS SDK for Go and the default credential provider chain.
414+
415+
:FeatureName: The AWS X-Ray Exporter
416+
include::snippets/technology-preview.adoc[]
417+
418+
.OpenTelemetry Collector custom resource with the enabled AWS X-Ray Exporter
419+
[source,yaml]
420+
----
421+
# ...
422+
config:
423+
exporters:
424+
awsxray:
425+
region: "<region>" # <1>
426+
endpoint: <endpoint> # <2>
427+
resource_arn: "<aws_resource_arn>" # <3>
428+
role_arn: "<iam_role>" # <4>
429+
indexed_attributes: [ "<indexed_attr_0>", "<indexed_attr_1>" ] # <5>
430+
aws_log_groups: ["<group1>", "<group2>"] # <6>
431+
request_timeout_seconds: 120 # <7>
432+
# ...
433+
----
434+
<1> The destination region for the X-Ray segments sent to the AWS X-Ray service. For example, `eu-west-1`.
435+
<2> Optional. You can override the default Amazon CloudWatch Logs service endpoint to which the requests are forwarded. For the list of service endpoints by region, see link:https://docs.aws.amazon.com/general/latest/gr/cwl_region.html[Amazon CloudWatch Logs endpoints and quotas] (AWS General Reference).
436+
<3> The Amazon Resource Name (ARN) of the AWS resource that is running the Collector.
437+
<4> The AWS Identity and Access Management (IAM) role for uploading the X-Ray segments to a different account.
438+
<5> The list of attribute names to be converted to X-Ray annotations.
439+
<6> The list of log group names for Amazon CloudWatch Logs.
440+
<7> Time duration in seconds before timing out a request. If omitted, the default value is `30`.
441+
442+
[role="_additional-resources"]
443+
.Additional resources
444+
* link:https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html[What is AWS X-Ray?] (AWS X-Ray Developer Guide)
445+
* link:https://docs.aws.amazon.com/sdk-for-go/api/index.html[AWS SDK for Go API Reference] (AWS Documentation)
446+
* link:https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials[Specifying Credentials] (AWS SDK for Go Developer Guide)
447+
// * link:https://docs.aws.amazon.com/sdk-for-go/v2/developer-guide/configure-auth.html[Configure Authentication] (AWS SDK for Go v2 Developer Guide)
448+
* link:https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html[IAM roles] (AWS Identity and Access Management User Guide)
449+
293450
[role="_additional-resources"]
294451
[id="additional-resources_otel-collector-exporters_{context}"]
295452
== Additional resources

0 commit comments

Comments
 (0)