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/exampleEl 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.yamlEn 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)"}