---
title: Amazon EFS
description: >-
  Amazon EFS provides simple, scalable file storage for use with Amazon EC2
  instances in the AWS Cloud.
breadcrumbs: Docs > Integrations > Amazon EFS
---

# Amazon EFS

## Overview{% #overview %}

Amazon EFS provides simple, scalable file storage for use with AWS Lambda functions or Amazon EC2 instances.

Enable this integration to collect all your EFS metrics in Datadog.

## Setup{% #setup %}

### Installation{% #installation %}

If you haven't already, set up the [Amazon Web Services integration first](https://docs.datadoghq.com/integrations/amazon_web_services.md).

### Metric collection{% #metric-collection %}

1. In the [AWS integration page](https://app.datadoghq.com/integrations/amazon-web-services), ensure that `EFS` is enabled under the `Metric Collection` tab.

1. Add those permissions to your [Datadog IAM policy](https://docs.datadoghq.com/integrations/amazon_web_services.md#installation) in order to collect Amazon EFS metrics:

   - `elasticfilesystem:DescribeTags`: Gets custom tags applied to file systems
   - `elasticfilesystem:DescribeFileSystems`: Provides a list of active file systems

For more information, see the [EFS policies](https://docs.aws.amazon.com/efs/latest/ug/auth-and-access-control.html) on the AWS website.

1. Install the [Datadog - Amazon EFS integration](https://app.datadoghq.com/integrations/amazon-efs).

### Log collection{% #log-collection %}

#### Enable logging{% #enable-logging %}

Configure Amazon EFS to send logs either to a S3 bucket or to CloudWatch.

**Note**: If you log to a S3 bucket, make sure that `amazon_efs` is set as *Target prefix*.

#### Send logs to Datadog{% #send-logs-to-datadog %}

1. If you haven't already, set up the [Datadog Forwarder Lambda function](https://docs.datadoghq.com/logs/guide/forwarder.md).

1. Once the Lambda function is installed, manually add a trigger on the S3 bucket or CloudWatch log group that contains your Amazon EFS logs in the AWS console:

   - [Add a manual trigger on the S3 bucket](https://docs.datadoghq.com/logs/guide/send-aws-services-logs-with-the-datadog-lambda-function.md#collecting-logs-from-s3-buckets)
   - [Add a manual trigger on the CloudWatch Log Group](https://docs.datadoghq.com/logs/guide/send-aws-services-logs-with-the-datadog-lambda-function.md#collecting-logs-from-cloudwatch-log-group)

### Amazon EFS for Lambda{% #amazon-efs-for-lambda %}

[Amazon EFS for Lambda](https://docs.datadoghq.com/integrations/amazon_lambda.md) allows you to connect an EFS to your Lambda functions. Organizations can use EFS for Lambda to simplify their machine learning and data processing workloads to be entirely serverless. To divide Lambda metrics and logs by EFS:

1. Install the [AWS Lambda integration](https://docs.datadoghq.com/integrations/amazon_lambda.md#aws-lambda-metrics) and enable metric collection.

1. Add this permission to your [Datadog IAM policy](https://docs.datadoghq.com/integrations/amazon_web_services.md#installation):

   - `elasticfilesystem:DescribeAccessPoints`: Lists active EFS connected to Lambda functions

## Data Collected{% #data-collected %}

### Metrics{% #metrics %}

|  |
|  |
| **aws.efs.burst\_credit\_balance**(gauge)           | The average burst credit balance during the period.*Shown as byte*                                                         |
| **aws.efs.burst\_credit\_balance.maximum**(gauge)   | The largest burst credit balance for any minute during the period.*Shown as byte*                                          |
| **aws.efs.burst\_credit\_balance.minimum**(gauge)   | The smallest burst credit balance for any minute during the period.*Shown as byte*                                         |
| **aws.efs.client\_connections**(count)              | The number of Amazon EC2 instances that are connected to a file system.                                                    |
| **aws.efs.data\_read\_iobytes**(count)              | The total number of bytes associated with read operations.*Shown as byte*                                                  |
| **aws.efs.data\_read\_iobytes.average**(count)      | The average size of read operations during the period.*Shown as byte*                                                      |
| **aws.efs.data\_read\_iobytes.maximum**(count)      | The size of the largest read operation during the period.*Shown as byte*                                                   |
| **aws.efs.data\_read\_iobytes.minimum**(count)      | The size of the smallest read operation during the period.*Shown as byte*                                                  |
| **aws.efs.data\_read\_iobytes.samplecount**(count)  | The sample count of the number of data points used for read operation metrics.*Shown as unit*                              |
| **aws.efs.data\_write\_iobytes**(count)             | The sum of the number bytes associated with write operations.*Shown as byte*                                               |
| **aws.efs.data\_write\_iobytes.average**(count)     | The average size of write operations during the period.*Shown as byte*                                                     |
| **aws.efs.data\_write\_iobytes.maximum**(count)     | The size of the largest write operation during the period.*Shown as byte*                                                  |
| **aws.efs.data\_write\_iobytes.minimum**(count)     | The size of the smallest write operation during the period.*Shown as byte*                                                 |
| **aws.efs.data\_write\_iobytes.samplecount**(count) | The sample count of the number of data points used for write operation metrics.*Shown as unit*                             |
| **aws.efs.metadata\_iobytes**(count)                | The total number of bytes associated with metadata operations.*Shown as byte*                                              |
| **aws.efs.metadata\_iobytes.average**(count)        | The average metadata operation during the period.*Shown as byte*                                                           |
| **aws.efs.metadata\_iobytes.maximum**(count)        | The size of the largest metadata operation during the period.*Shown as byte*                                               |
| **aws.efs.metadata\_iobytes.minimum**(count)        | The size of the smallest metadata operation during the period.*Shown as byte*                                              |
| **aws.efs.metadata\_iobytes.samplecount**(count)    | The sample count of the number of data points used for metadata operation metrics.*Shown as unit*                          |
| **aws.efs.metered\_iobytes**(gauge)                 | The average size of an operation during the period.*Shown as byte*                                                         |
| **aws.efs.metered\_iobytes.maximum**(gauge)         | The size of the largest operation during the period.*Shown as byte*                                                        |
| **aws.efs.metered\_iobytes.minimum**(gauge)         | The size of the smallest operation during the period.*Shown as byte*                                                       |
| **aws.efs.metered\_iobytes.samplecount**(gauge)     | A count of metadata operations.*Shown as byte*                                                                             |
| **aws.efs.metered\_iobytes.sum**(gauge)             | The total number of bytes associated with metadata operations.*Shown as byte*                                              |
| **aws.efs.percent\_iolimit**(gauge)                 | Shows how close a file system is to reaching the I/O limit of the general purpose performance mode.*Shown as percent*      |
| **aws.efs.permitted\_throughput**(gauge)            | The average throughput permitted during the period.*Shown as byte*                                                         |
| **aws.efs.permitted\_throughput.maximum**(gauge)    | The highest throughput permitted for any minute during the period.*Shown as byte*                                          |
| **aws.efs.permitted\_throughput.minimum**(gauge)    | The smallest throughput permitted for any minute during the period.*Shown as byte*                                         |
| **aws.efs.storage\_bytes**(gauge)                   | The latest known metered size (in bytes) of data stored in the file system, including both storage classes.*Shown as byte* |
| **aws.efs.total\_iobytes**(count)                   | The total number of bytes associated with all file system operations*Shown as byte*                                        |
| **aws.efs.total\_iobytes.average**(count)           | The average size of an operation during the period*Shown as byte*                                                          |
| **aws.efs.total\_iobytes.maximum**(count)           | The size of the largest operation during the period.*Shown as byte*                                                        |
| **aws.efs.total\_iobytes.minimum**(count)           | The size of the smallest operation during a period.*Shown as byte*                                                         |
| **aws.efs.total\_iobytes.samplecount**(count)       | The sample count of the number of data points used for file system operation metrics.*Shown as unit*                       |

Each of the metrics retrieved from AWS are assigned the same tags that appear in the AWS console, including but not limited to host name, security-groups, and more.

### Events{% #events %}

The Amazon Elastic File System integration does not include any events.

### Service Checks{% #service-checks %}

The Amazon Elastic File System integration does not include any service checks.

## Troubleshooting{% #troubleshooting %}

Need help? Contact [Datadog support](https://docs.datadoghq.com/help/).
