### ethl-cli

The `ethl` CLI provides a command-line interface for interacting with the core features of the library, including log streaming, event archiving, and replay functionalities. It is designed to easily capture logs in a format that can be used by the core library.

```
cargo install ethl-cli
```

See how to configure RPC providers and other options

```
ethl --help
```

Extract specific events to S3. This is re-entrant, and will start with the next block from the last extraction.

```
ethl extract --verbose --chain-id 8453 --ankr-api-key KEY --to-block 35000000 --output s3://mybucket/8453/events \
--events "event Swap(address indexed sender, address indexed recipient, int256 amount0, int256 amount1, uint160 sqrtPriceX96, uint128 liquidity, int24 tick)" \
--events "event Mint(address sender, address indexed owner, int24 indexed tickLower, int24 indexed tickUpper, uint128 amount, uint256 amount0, uint256 amount1)"
```

Watch for events

```
ethl cat --chain-id 8453 --ankr-api-key KEY \
--events "event Swap(address indexed sender, address indexed recipient, int256 amount0, int256 amount1, uint160 sqrtPriceX96, uint128 liquidity, int24 tick)"
```