Skip to content

Commit

Permalink
remove notes column
Browse files Browse the repository at this point in the history
  • Loading branch information
maryliag committed Apr 9, 2024
1 parent 0cfc1ce commit db23c1c
Showing 1 changed file with 51 additions and 51 deletions.
102 changes: 51 additions & 51 deletions detectors/node/opentelemetry-resource-detector-aws/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,86 +31,86 @@ const resource = await detectResources({
const tracerProvider = new NodeTracerProvider({ resource });
```

## Available detectors & Semantic Conventions
## Available detectors

This package uses `@opentelemetry/semantic-conventions` version `1.22+`, which implements Semantic Convention [Version 1.7.0](https://github.com/open-telemetry/opentelemetry-specification/blob/v1.7.0/semantic_conventions/README.md)

### AWS Beanstalk Detector

Populates `service` for processes running on [AWS Elastic Beanstalk](https://aws.amazon.com/elasticbeanstalk/)

| Resource Attribute | Description | Notes |
|---------------------|--------------------------------------------------------------------------| -------------------------------------- |
| cloud.platform | The cloud platform. In this context, it's always "aws_elastic_beanstalk" | Key: `SEMRESATTRS_CLOUD_PLATFORM` |
| cloud.provider | The cloud provider. In this context, it's always "aws" | Key: `SEMRESATTRS_CLOUD_PROVIDER` |
| service.instance.id | Value of `deployment_id` from config file `environment.conf` | Key: `SEMRESATTRS_SERVICE_INSTANCE_ID` |
| service.name | The service name. In this context, it's always "aws_elastic_beanstalk" | Key: `SEMRESATTRS_SERVICE_NAME` |
| service.namespace | Value of `environment_name` from config file `environment.conf` | Key: `SEMRESATTRS_SERVICE_NAMESPACE` |
| service.version | Value of `version_label` from config file `environment.conf` | Key: `SEMRESATTRS_SERVICE_VERSION` |
| Resource Attribute | Description |
|---------------------|--------------------------------------------------------------------------|
| cloud.platform | The cloud platform. In this context, it's always "aws_elastic_beanstalk" |
| cloud.provider | The cloud provider. In this context, it's always "aws" |
| service.instance.id | Value of `deployment_id` from config file `environment.conf` |
| service.name | The service name. In this context, it's always "aws_elastic_beanstalk" |
| service.namespace | Value of `environment_name` from config file `environment.conf` |
| service.version | Value of `version_label` from config file `environment.conf` |

### AWS EC2 Detector

Populates `cloud` and `host` for processes running on [Amazon EC2](https://aws.amazon.com/ec2/), including abstractions such as ECS on EC2. Notably, it does not populate anything on AWS Fargate.

| Resource Attribute | Description | Notes |
|-------------------------|---------------------------------------------------------------------------------------| ------------------------------------------ |
| cloud.account.id | Value of `accountId` from `/latest/dynamic/instance-identity/document` request | Key: `SEMRESATTRS_CLOUD_ACCOUNT_ID` |
| cloud.availability_zone | Value of `availabilityZone` from `/latest/dynamic/instance-identity/document` request | Key: `SEMRESATTRS_CLOUD_AVAILABILITY_ZONE` |
| cloud.platform | The cloud platform. In this context, it's always "aws_ec2" | Key: `SEMRESATTRS_CLOUD_PLATFORM` |
| cloud.provider | The cloud provider. In this context, it's always "aws" | Key: `SEMRESATTRS_CLOUD_PROVIDER` |
| cloud.region | Value of `region` from `/latest/dynamic/instance-identity/document` request | Key: `SEMRESATTRS_CLOUD_REGION` |
| host.id | Value of `instanceId` from `/latest/dynamic/instance-identity/document` request | Key: `SEMRESATTRS_HOST_ID` |
| host.name | Value of `hostname` from `/latest/dynamic/instance-identity/document` request | Key: `SEMRESATTRS_HOST_NAME` |
| host.type | Value of `instanceType` from `/latest/dynamic/instance-identity/document` request | Key: `SEMRESATTRS_HOST_TYPE` |
| Resource Attribute | Description |
|-------------------------|---------------------------------------------------------------------------------------|
| cloud.account.id | Value of `accountId` from `/latest/dynamic/instance-identity/document` request |
| cloud.availability_zone | Value of `availabilityZone` from `/latest/dynamic/instance-identity/document` request |
| cloud.platform | The cloud platform. In this context, it's always "aws_ec2" |
| cloud.provider | The cloud provider. In this context, it's always "aws" |
| cloud.region | Value of `region` from `/latest/dynamic/instance-identity/document` request |
| host.id | Value of `instanceId` from `/latest/dynamic/instance-identity/document` request |
| host.name | Value of `hostname` from `/latest/dynamic/instance-identity/document` request |
| host.type | Value of `instanceType` from `/latest/dynamic/instance-identity/document` request |

### AWS ECS Detector

Populates `container` for containers running on [Amazon ECS](https://aws.amazon.com/ecs/).

| Resource Attribute | Description | Notes |
|-------------------------|----------------------------------------------------------------------------------------| ------------------------------------------ |
| aws.ecs.container.arn | Value of `ContainerARN` from the request to the metadata Uri. The Metadata Uri is stored on the Environment Variable `ECS_CONTAINER_METADATA_URI_V4` | Key: `SEMRESATTRS_AWS_ECS_CONTAINER_ARN` |
| aws.ecs.cluster.arn | Value in the format `${baseArn}:cluster/${cluster}`, with `baseArn` and `cluster` from a `ECS_CONTAINER_METADATA_URI_V4/task` request, with values from `TaskARN` and `Cluster` respectively | Key: `SEMRESATTRS_AWS_ECS_CLUSTER_ARN` |
| aws.ecs.launchtype | Value of `LaunchType` from `ECS_CONTAINER_METADATA_URI_V4/task` request | Key: `SEMRESATTRS_AWS_ECS_LAUNCHTYPE` |
| aws.ecs.task.arn | Value of `TaskARN` from `ECS_CONTAINER_METADATA_URI_V4/task` request | Key: `SEMRESATTRS_AWS_ECS_TASK_ARN` |
| aws.ecs.task.family | Value of `Family` from `ECS_CONTAINER_METADATA_URI_V4/task` request | Key: `SEMRESATTRS_AWS_ECS_TASK_FAMILY` |
| aws.ecs.task.revision | Value of `Revision` from `ECS_CONTAINER_METADATA_URI_V4/task` request | Key: `SEMRESATTRS_AWS_ECS_TASK_REVISION` |
| aws.log.group.arns | Value on format `arn:aws:logs:${logsRegion}:${awsAccount}:log-group:${logsGroupName}`, with `logsRegions` and `logsGroupName` from logs metadata, values of `awslogs-region` and `awslogs-group` respectively, and `awsAccount` parsed value from the `TaskARN`. Logs metadata values come from `LogOptions` on `ECS_CONTAINER_METADATA_URI_V4` request | Key: `SEMRESATTRS_AWS_LOG_GROUP_ARNS` |
| aws.log.group.names | Value of `awslogs-group` from logs metadata. Logs metadata values come from `LogOptions` on `ECS_CONTAINER_METADATA_URI_V4` request | Key: `SEMRESATTRS_AWS_LOG_GROUP_NAMES` |
| aws.log.stream.arns | Value on format `arn:aws:logs:${logsRegion}:${awsAccount}:log-group:${logsGroupName}:log-stream:${logsStreamName}`, with `logsRegions`, `logsGroupName` and `logsStreamName` from logs metadata, values of `awslogs-region`, `awslogs-group` and `awslogs-stream` respectively, and `awsAccount` parsed value from the `TaskARN` | Key: `SEMRESATTRS_AWS_LOG_STREAM_ARNS` |
| aws.log.stream.names | Value of `awslogs-stream` from logs metadata | Key: `SEMRESATTRS_AWS_LOG_STREAM_NAMES` |
| cloud.account.id | Parsed value from the `TaskARN` | Key: `SEMRESATTRS_CLOUD_ACCOUNT_ID` |
| cloud.availability_zone | Value of `AvailabilityZone` from `ECS_CONTAINER_METADATA_URI_V4/task` request. This value is not available in all Fargate runtimes | Key: `SEMRESATTRS_CLOUD_AVAILABILITY_ZONE` |
| cloud.platform | The cloud platform. In this context, it's always "aws_ecs" | Key: `SEMRESATTRS_CLOUD_PLATFORM` |
| cloud.provider | The cloud provider. In this context, it's always "aws" | Key: `SEMRESATTRS_CLOUD_PROVIDER` |
| cloud.region | Parsed value from the `TaskARN` | Key: `SEMRESATTRS_CLOUD_REGION` |
| container.id | Value of from file `/proc/self/cgroup` | Key: `SEMRESATTRS_CONTAINER_ID` |
| container.name | The hostname of the operating system | Key: `SEMRESATTRS_CONTAINER_NAME` |
| Resource Attribute | Description |
|-------------------------|----------------------------------------------------------------------------------------|
| aws.ecs.container.arn | Value of `ContainerARN` from the request to the metadata Uri. The Metadata Uri is stored on the Environment Variable `ECS_CONTAINER_METADATA_URI_V4` |
| aws.ecs.cluster.arn | Value in the format `${baseArn}:cluster/${cluster}`, with `baseArn` and `cluster` from a `ECS_CONTAINER_METADATA_URI_V4/task` request, with values from `TaskARN` and `Cluster` respectively |
| aws.ecs.launchtype | Value of `LaunchType` from `ECS_CONTAINER_METADATA_URI_V4/task` request |
| aws.ecs.task.arn | Value of `TaskARN` from `ECS_CONTAINER_METADATA_URI_V4/task` request |
| aws.ecs.task.family | Value of `Family` from `ECS_CONTAINER_METADATA_URI_V4/task` request |
| aws.ecs.task.revision | Value of `Revision` from `ECS_CONTAINER_METADATA_URI_V4/task` request |
| aws.log.group.arns | Value on format `arn:aws:logs:${logsRegion}:${awsAccount}:log-group:${logsGroupName}`, with `logsRegions` and `logsGroupName` from logs metadata, values of `awslogs-region` and `awslogs-group` respectively, and `awsAccount` parsed value from the `TaskARN`. Logs metadata values come from `LogOptions` on `ECS_CONTAINER_METADATA_URI_V4` request |
| aws.log.group.names | Value of `awslogs-group` from logs metadata. Logs metadata values come from `LogOptions` on `ECS_CONTAINER_METADATA_URI_V4` request |
| aws.log.stream.arns | Value on format `arn:aws:logs:${logsRegion}:${awsAccount}:log-group:${logsGroupName}:log-stream:${logsStreamName}`, with `logsRegions`, `logsGroupName` and `logsStreamName` from logs metadata, values of `awslogs-region`, `awslogs-group` and `awslogs-stream` respectively, and `awsAccount` parsed value from the `TaskARN` |
| aws.log.stream.names | Value of `awslogs-stream` from logs metadata |
| cloud.account.id | Parsed value from the `TaskARN` |
| cloud.availability_zone | Value of `AvailabilityZone` from `ECS_CONTAINER_METADATA_URI_V4/task` request. This value is not available in all Fargate runtimes |
| cloud.platform | The cloud platform. In this context, it's always "aws_ecs" |
| cloud.provider | The cloud provider. In this context, it's always "aws" |
| cloud.region | Parsed value from the `TaskARN` |
| container.id | Value of from file `/proc/self/cgroup` |
| container.name | The hostname of the operating system |

### AWS EKS Detector

Populates `container` and `k8s.cluster_name` for containers running on [Amazon EKS](https://aws.amazon.com/eks/).
`k8s.cluster_name` is not always available depending on the configuration of CloudWatch monitoring for the EKS cluster.

| Resource Attribute | Description | Notes |
|--------------------|-----------------------------------------------------------------------------------------------------| ----------------------------------- |
| cloud.platform | The cloud platform. In this context, it's always "aws_eks" | Key: `SEMRESATTRS_CLOUD_PLATFORM` |
| cloud.provider | The cloud provider. In this context, it's always "aws" | Key: `SEMRESATTRS_CLOUD_PROVIDER` |
| container.id | Value from config file `/proc/self/cgroup` | Key: `SEMRESATTRS_CONTAINER_ID` |
| k8s.cluster.name | Value of `cluster.name` from `/api/v1/namespaces/amazon-cloudwatch/configmaps/cluster-info` request | Key: `SEMRESATTRS_K8S_CLUSTER_NAME` |
| Resource Attribute | Description |
|--------------------|-----------------------------------------------------------------------------------------------------|
| cloud.platform | The cloud platform. In this context, it's always "aws_eks" |
| cloud.provider | The cloud provider. In this context, it's always "aws" |
| container.id | Value from config file `/proc/self/cgroup` |
| k8s.cluster.name | Value of `cluster.name` from `/api/v1/namespaces/amazon-cloudwatch/configmaps/cluster-info` request |

### AWS Lambda Detector

Populates `faas` and `cloud` for functions running on [AWS Lambda](https://aws.amazon.com/lambda/).
`faas.id` is currently not populated as it is not provided by the runtime at startup.

| Resource Attribute | Description | Notes |
|--------------------|---------------------------------------------------------------------| --------------------------------- |
| cloud.platform | The cloud platform. In this context, it's always "aws_lambda" | Key: `SEMRESATTRS_CLOUD_PLATFORM` |
| cloud.provider | The cloud provider. In this context, it's always "aws" | Key: `SEMRESATTRS_CLOUD_PROVIDER` |
| cloud.region | Value of Process Environment Variable `AWS_REGION` | Key: `SEMRESATTRS_CLOUD_REGION` |
| faas.name | Value of Process Environment Variable `AWS_LAMBDA_FUNCTION_NAME` | Key: `SEMRESATTRS_FAAS_NAME` |
| faas.version | Value of Process Environment Variable `AWS_LAMBDA_FUNCTION_VERSION` | Key: `SEMRESATTRS_FAAS_VERSION` |
| Resource Attribute | Description |
|--------------------|---------------------------------------------------------------------|
| cloud.platform | The cloud platform. In this context, it's always "aws_lambda" |
| cloud.provider | The cloud provider. In this context, it's always "aws" |
| cloud.region | Value of Process Environment Variable `AWS_REGION` |
| faas.name | Value of Process Environment Variable `AWS_LAMBDA_FUNCTION_NAME` |
| faas.version | Value of Process Environment Variable `AWS_LAMBDA_FUNCTION_VERSION` |

## Useful links

Expand Down

0 comments on commit db23c1c

Please sign in to comment.