Ejecutar tu Procesador
Prerrequisitos
Sección titulada «Prerrequisitos»Por favor primero lee Crear un Procesador, Crear un Paso, y Conectar Pasos, que configurarán tu procesador y conectarán los pasos de tu procesador.
Cómo configurar tu config.yaml
Sección titulada «Cómo configurar tu config.yaml»Para ejecutar un procesador, necesitarás crear un archivo config.yaml
.
El formato del archivo config.yaml
debería seguir el formato que has definido en tu IndexerProcessorConfig
.
Por ejemplo, si estás usando el IndexerProcessorConfig
de aptos-indexer-processor-example
, un config.yaml
básico se vería así:
health_check_port: 8085server_config: processor_config: type: "events_processor" transaction_stream_config: indexer_grpc_data_service_address: "https://grpc.mainnet.aptoslabs.com:443" starting_version: 0 auth_token: "{AUTH_TOKEN}" request_name_header: "events-processor" db_config: postgres_connection_string: postgresql://postgres:@localhost:5432/example
El campo processor_config
debería coincidir con cómo ProcessorConfig
está definido en el IndexerProcessorConfig
, y lo mismo aplica para db_config
y DbConfig
.
TransactionStreamConfig
es una configuración proporcionada por el crate transaction-stream
.
Requiere que indexer_grpc_data_service_address
, auth_token
, y request_name_header
estén establecidos.
Para obtener el indexer_grpc_data_service_address
y auth_token
, puedes seguir la guía aquí.
TransactionStreamConfig
también soporta más campos opcionales para modificar la conexión a Transaction Stream, sobre lo cual puedes aprender más aquí.
Ejecutar tu procesador
Sección titulada «Ejecutar tu procesador»Una vez que tu config.yaml
esté configurado, puedes ejecutar tu procesador con:
cd /path/to/your/processor/cratecargo run --release -- -c config.yaml
En tu terminal, deberías empezar a ver logs como este:
{"timestamp":"2025-01-13T21:23:21.785452Z","level":"INFO","message":"[Transaction Stream] Successfully connected to GRPC stream","stream_address":"https://grpc.mainnet.aptoslabs.com/","connection_id":"ec67ecc4-e041-4f17-a2e2-441e7ff21487","start_version":2186504987,"filename":"/Users/reneetso/.cargo/git/checkouts/aptos-indexer-processor-sdk-2f3940a333c8389d/e6867c5/aptos-indexer-processors-sdk/transaction-stream/src/transaction_stream.rs","line_number":349,"threadName":"tokio-runtime-worker","threadId":"ThreadId(4)"}{"timestamp":"2025-01-13T21:23:21.785664Z","level":"INFO","message":"Spawning polling task","step_name":"TransactionStreamStep","filename":"/Users/reneetso/.cargo/git/checkouts/aptos-indexer-processor-sdk-2f3940a333c8389d/e6867c5/aptos-indexer-processors-sdk/sdk/src/traits/pollable_async_step.rs","line_number":112,"threadName":"tokio-runtime-worker","threadId":"ThreadId(23)"}{"timestamp":"2025-01-13T21:23:21.785693Z","level":"INFO","message":"Spawning processing task","step_name":"TransactionStreamStep","filename":"/Users/reneetso/.cargo/git/checkouts/aptos-indexer-processor-sdk-2f3940a333c8389d/e6867c5/aptos-indexer-processors-sdk/sdk/src/traits/pollable_async_step.rs","line_number":204,"threadName":"tokio-runtime-worker","threadId":"ThreadId(23)"}{"timestamp":"2025-01-13T21:23:21.785710Z","level":"INFO","message":"Spawning processing task","step_name":"FungibleAssetExtractor","filename":"/Users/reneetso/.cargo/git/checkouts/aptos-indexer-processor-sdk-2f3940a333c8389d/e6867c5/aptos-indexer-processors-sdk/sdk/src/traits/async_step.rs","line_number":87,"threadName":"tokio-runtime-worker","threadId":"ThreadId(4)"}{"timestamp":"2025-01-13T21:23:21.785912Z","level":"INFO","message":"Spawning processing task","step_name":"FungibleAssetStorer","filename":"/Users/reneetso/.cargo/git/checkouts/aptos-indexer-processor-sdk-2f3940a333c8389d/e6867c5/aptos-indexer-processors-sdk/sdk/src/traits/async_step.rs","line_number":87,"threadName":"tokio-runtime-worker","threadId":"ThreadId(4)"}{"timestamp":"2025-01-13T21:23:21.785978Z","level":"INFO","message":"Spawning polling task","step_name":"VersionTrackerStep: ()","filename":"/Users/reneetso/.cargo/git/checkouts/aptos-indexer-processor-sdk-2f3940a333c8389d/e6867c5/aptos-indexer-processors-sdk/sdk/src/traits/pollable_async_step.rs","line_number":112,"threadName":"tokio-runtime-worker","threadId":"ThreadId(14)"}{"timestamp":"2025-01-13T21:23:21.786018Z","level":"INFO","message":"Spawning processing task","step_name":"VersionTrackerStep: ()","filename":"/Users/reneetso/.cargo/git/checkouts/aptos-indexer-processor-sdk-2f3940a333c8389d/e6867c5/aptos-indexer-processors-sdk/sdk/src/traits/pollable_async_step.rs","line_number":204,"threadName":"tokio-runtime-worker","threadId":"ThreadId(14)"}