🔛Environment Variables
Environment Variables for Guru Network Indexer
OUTPUT
Ethereum ETL supports a variety of item exporters, which are classes that write items to specified destinations. To configure an item exporter, set the OUTPUT
environment variable. You can specify multiple outputs at once using the format:
OUTPUT=exporter_name://path,second_exporter://path_to_second_destination
.
Here are the item exporters available out of the box and how to set them up:
CONSOLE
Output to the console
OUTPUT=console
or OUTPUT=None
JSON
Output to a JSON file
OUTPUT=path_to_output.json
CSV
Output to a CSV file
OUTPUT=path_to_output.csv
PROJECTS
Output to Google Cloud Projects
OUTPUT=projects://path_to_google_cloud_project
KINESIS
Output to AWS Kinesis stream
OUTPUT=kinesis://stream_name
KAFKA
Output to Apache Kafka topic
OUTPUT=kafka://topic
POSTGRES
Output to PostgreSQL database
OUTPUT=postgresql://user:password@host:port/dbname
GCS
Output to Google Cloud Storage bucket
OUTPUT=gs://bucket_name
CLICKHOUSE
Output to ClickHouse database
OUTPUT=clickhouse+http://host:port/dbname
AMQP
Output to AMQP message broker
OUTPUT=amqp://user:password@host:port/vhost
or OUTPUT=rabbitmq://user:password@host:port/vhost
ELASTICSEARCH
Output to Elasticsearch index
OUTPUT=elasticsearch+http://host:port/index_name
or OUTPUT=elasticsearch+https://user:password@host:9200/index_name
DATABASE
Optional, is used when Clickhouse is in OUTPUT. Specifies the name of the ClickHouse database. You can choose any name.
PROVIDER_URL
The URL of your RPC provider (public node, Infura, local node, etc.). PROVIDER_URL=https://ethereum-rpc.publicnode.com
LAST_SYNCED_BLOCK_PROVIDER
Optional, if not set, a local file will be used. The provider used to sync the last indexed block (local file, Redis, SQL database).
LAST_SYNCED_BLOCK_PROVIDER=redis://redis:6379
LAST_SYNCED_BLOCK_PROVIDER=clickhouse+http://clickouse:8123/database_name
EXPORT_FROM_CLICKHOUSE
Optional. If set, the indexer will export entities from ClickHouse first and fallback to the node if necessary. Useful for indexed tokens and pools or multiple indexers.
EXPORT_FROM_CLICKHOUSE=clickhouse+http://clickhouse-2:8123/db_same_blockchain
START_BLOCK
The block number to start indexing from. It can be set as the latest block. If the block number from the LAST_SYNCED_BLOCK_PROVIDER
is greater than START_BLOCK
, then the last synced block will be used. Examples:
START_BLOCK='latest' or START_BLOCK=1337
END_BLOCK
(Optional) The block number to stop indexing. If not set, indexing continues indefinitely.
ENTITY_TYPES
A comma-separated list of entities to export
ENTITY_TYPES=block,transaction,token_transfer
block
Information about each block in the blockchain.
transaction
Data related to individual transactions.
receipt
Receipts for each transaction, including status and gas used.
log
Logs generated by smart contract events during transactions.
token_transfer
Transfers of ERC-20, ERC-721, and other tokens.
geth_trace
Call traces from the Geth Ethereum client.
contract
Information about smart contracts deployed on the blockchain.
token
Metadata and details about tokens.
internal_transfer
Internal Ether transfers within the blockchain.
token_balance
Balances of tokens held by addresses.
error
Errors encountered during indexing.
native_balance
Balances of native cryptocurrency (e.g., Ether) held by addresses.
token_transfer_priced
Priced transfers of tokens, including valuation.
internal_transfer_priced
Priced internal transfers, including valuation.
dex_pool
Information about decentralized exchange (DEX) liquidity pools.
enriched_dex_trade
Enhanced details about DEX trades, including additional context.
enriched_transfer
Enhanced details about token transfers, including additional context.
Last updated