# Forward

> Forward telemetry data to object storage backends without storing it in Last9

Source: https://last9.io/docs/control-plane-forward/

![Control Plane — Pipeline Sequence: Forward](../../../../../assets/content/docs/control-plane/ingestion/control-plane-pipeline-sequence-forward.jpg)

<figcaption class="-mt-6">Order of Last9's pipeline processing.</figcaption>

The Forward feature allows you to send telemetry data directly to external object storage like AWS S3 without storing it in Last9. This is particularly useful for compliance data that needs long-term storage but isn't frequently queried.

Access the [Forward](https://app.last9.io/control-plane/forward) feature in your Control Plane.

## Prerequisites

Before creating forward rules, you'll need:

- An AWS S3 bucket configured for Last9 access
- IAM AssumeRole permissions set up for Last9
- Understanding of which telemetry data you want to forward

## Configure AWS S3 Backend

    1. Navigate to your Control Plane → [Cold Storage](https://app.last9.io/control-plane/cold-storage)
    2. Configure your S3 bucket details and IAM AssumeRole ARN
    3. Save the configuration

![Configure Cold Storage Backend](../../../../../assets/content/docs/control-plane/ingestion/forward/control-plane-cold-storage.png)

Learn more about setting up [IAM AssumeRole for AWS S3](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html) in AWS documentation.

## Create Forward Rules

Forward rules determine which telemetry data gets sent to your configured storage backend.

    1. In your Control Plane, navigate to **Forward** and click **New Rule**
    2. Configure matching filters using `==` or `!=` operators to specify which data to forward
    3. Click **View Logs** to preview which data matches your filters
    4. Save your forward rule once you've verified the filter criteria and added an identifiable rule name

![Create Forward Rule](../../../../../assets/content/docs/control-plane/ingestion/forward/control-plane-forward-logs.png)

### Filter Configuration

Use matching filters to specify exactly which data to forward:

- **Equal (`==`)**: Forward data that matches the specified value
- **Not equal (`!=`)**: Forward data that doesn't match the specified value

**Example filters:**

```
service.name == "payment-service"
log.level != "debug"
```

:::warning
Data that matches forward rules is **not stored in Last9** and cannot be recovered. Always verify your filters using "View Logs" before saving.
:::

## Supported Data Types

Forward currently supports:

- **Logs**: Application logs, system logs, structured log data, etc

**Supported storage backends:**

- AWS S3 (with more backends planned)

## Multiple Forward Rules

You can create multiple forward rules for different data types or services. Each rule operates independently and can forward to different storage backends.

## Best Practices

- Start with specific filters to avoid forwarding more data than intended
- Use the preview feature to verify your filter logic before enabling rules
- Monitor your S3 storage costs as forwarded data accumulates
- Consider data retention policies for your S3 bucket
- Test forward rules with non-critical data first

:::note
Forwarded telemetry is automatically compressed and stored in `.gz` format in your configured storage backend.
:::

---

## Troubleshooting

Please get in touch with us on [Discord](https://discord.com/invite/Q3p2EEucx9) or [Email](mailto:support@last9.io) if you have any questions.
