ARN - Amazon Resource Name

How cloud resources are identified across the AWS stack

Dashbird is a monitoring platform for monitoring modern cloud infrastructure by providing alerts, insights and data visualisation.

Start a Free Trial Learn more

Overview

ARN stands for Amazon Resource Name. It’s a unique identifier for resources in the AWS Cloud: an server instance, a database instance, a queue buffer, etc.

The ARN can be useful when developers need to refer to a resource in an documentation, for example. Or when it’s necessary to request help from the AWS support team.

The ARN has the following format:1

arn:partition:service:region:account-id:resource-type:resource-id

The resource-type is optional. When it’s omitted, the ARN is presented as:

arn:partition:service:region:account-id:resource-id

Each ARN always starts with arn and is composed of five additional terms (listed below), separated by comma :. Another variation is a slash to separate the resource-type from the resource-id:

arn:partition:service:region:account-id:resource-type/resource-id

Partition

By default, the partition value is always aws. There are special cases in China of infrastructure locations where AWS depends on partners. In this case, it may show aws-cn.

Service

Identified the AWS service to which the resource belongs. It could be lambda, ec2, rds, dynamodb, or any other service.

Region

Indicates in which AWS Region the resource is deployed. It could be us-east-1 or eu-west-2.

For a complete list of AWS Regions and their ARN identifiers, please check the AWS documentation.

Also read our guide about the AWS Global Infrastructure to understand what is a Region and an Availability Zone in AWS.

Account ID

Identifies the AWS account that owns the resource. This is particularly useful in internal documentations for teams that use multiple accounts. It is a good practice to have one account for development and testing purposes, and a separate account for production usage.

Resource-Type and Resource-ID

The value of resource-type and resource-id varies according to the service.

In DynamoDB1, for example, a table has the following format: table/{table-name}. A Table stream has the following format: table/{table-name}/stream/{YYYY-MM-DDThh:mm:ss.ddd} (e.g. table/my-db-table/stream/2020-01-15T19:00:27.055).

A Lambda function will have the following resource-type and resource-id: function:{function-name}.


Footnotes

Operate Cloud Applications at Highest Quality

Save time spent on debugging applications.

Increase development velocity and quality.

Get actionable insights to your infrastructure.

Finish setup in 2 minutes!