Comienzo Rapido

This guide will quickly take you through how to initialize, create, and deploy your subgraph to the Subgraph Studio or the hosted service.

Ensure that your subgraph will be indexing data from a supported network.

Esta guía está escrita asumiendo que tú tienes:

  • Una dirección de un smart contract en la red de tu preferencia
  • GRT para crear tu subgráfo
  • Una wallet crypto

1. Crea un subgrafo en el Subgraph Studio

Enlace a esta sección

Go to the Subgraph Studio and connect your wallet.

Una vez conectado, puedes comenzar presionando "Crea un subgrafo". Selecciona la red de tu elección y presiona continuar.

2. Instala the graph CLI

Enlace a esta sección

The Graph CLI is written in JavaScript and you will need to have either npm or yarn installed to use it.

En tu dispositivo, ejecuta alguno de los siguientes comandos:

Using npm:

npm install -g @graphprotocol/graph-cli

Using yarn:

yarn global add @graphprotocol/graph-cli

3. Inicia tu subgrafo

Enlace a esta sección

You can find commands for your specific subgraph on the subgraph page in Subgraph Studio.

Cuando inicies tu subgrafo, la herramienta CLI te preguntará por la siguiente información:

  • Protocol: elige el protocolo desde el cual tu subgrafo indexará datos
  • Subgraph slug: crea un nombre para tu subgrafo. El slug de tu subgrafo es un identificador para el mismo.
  • Directorio para crear el subgrafo: elige el directorio local de tu elección
  • Red Ethereum (opcional): Es posible que debas especificar desde qué red compatible con EVM tu subgrafo indexará datos
  • Dirección del contrato: Localiza la dirección del contrato inteligente del que deseas consultar los datos
  • ABI: Si el ABI no se completa automáticamente, deberás ingresar los datos manualmente en formato JSON
  • Start Block: se sugiere que ingreses el bloque de inicio para ahorrar tiempo mientras tu subgrafo indexa los datos de la blockchain. Puedes ubicar el bloque de inicio encontrando el bloque en el que se deployó tu contrato.
  • Nombre del contrato: introduce el nombre de tu contrato
  • Indexar eventos del contrato como entidades: se sugiere que lo establezcas en "verdadero" ya que automáticamente agregará mapeos a tu subgrafo para cada evento emitido
  • Añade otro contrato(opcional): puedes añadir otro contrato

Inicializa tu subgrafo a partir de un contrato existente ejecutando el siguiente comando:

graph init --studio <SUBGRAPH_SLUG>

Ve la siguiente captura para un ejemplo de que debes de esperar cuando inicializes tu subgrafo:

Subgraph command

4. Escribe tu subgrafo

Enlace a esta sección

Los comandos anteriores crean un subgrafo de andamio que puedes utilizar como punto de partida para construir tu subgrafo. Al realizar cambios en el subgrafo, trabajarás principalmente con tres archivos:

  • Manifest (subgraph.yaml) - El manifiesto define qué fuentes de datos indexarán tus subgrafos.
  • Schema (schema.graphql) - El esquema GraphQL define los datos que deseas recuperar del subgrafo.
  • AssemblyScript Mappings (mapping.ts) - Este es el código que traduce los datos de tus fuentes de datos a las entidades definidas en el esquema.

Para obtener más información sobre cómo escribir tu subgrafo, consulta Crear un subgrafo.

5. Despliega en Subgraph Studio

Enlace a esta sección

Una vez escrito tu subgrafo, ejecuta los siguientes comandos:

$ graph codegen
$ graph build
  • Autentica y deploya tu subgrafo. La clave para deployar se puede encontrar en la página de Subgraph en Subgraph Studio.
$ graph auth --studio <DEPLOY_KEY>
$ graph deploy --studio <SUBGRAPH_SLUG>

You will be asked for a version label. It's strongly recommended to use semver for versioning like 0.0.1. That said, you are free to choose any string as version such as:v1, version1, asdf.

6. Prueba tu subgrafo

Enlace a esta sección

Puedes probar tu subgrafo haciendo una consulta de muestra en la sección de "playground".

Los registros te indicarán si hay algún error con tu subgrafo. Los registros de un subgrafo operativo se verán así:

Subgraph logs

If your subgraph is failing, you can query the subgraph health by using the GraphiQL Playground. Note that you can leverage the query below and input your deployment ID for your subgraph. In this case, Qm... is the deployment ID (which can be located on the Subgraph page under Details). The query below will tell you when a subgraph fails, so you can debug accordingly:

{
indexingStatuses(subgraphs: ["Qm..."]) {
node
synced
health
fatalError {
message
block {
number
hash
}
handler
}
nonFatalErrors {
message
block {
number
hash
}
handler
}
chains {
network
chainHeadBlock {
number
}
earliestBlock {
number
}
latestBlock {
number
}
lastHealthyBlock {
number
}
}
entityCount
}
}

7. Publica tu subgrafo en la red descentralizada de the graph

Enlace a esta sección

Una vez que tu subgrafo se haya deployado en Subgraph Studio, lo hayas probado y estés listo para ponerlo en producción, lo podrás publicar en la red descentralizada.

En el subgraph studio, da click en tu subgrafo. En la pagina del subgrafo, podrás darle click en el boton de publicar que se encuentra en la parte superior derecha.

Select the network you would like to publish your subgraph to. It is recommended to publish subgraphs to Arbitrum One to take advantage of the faster transaction speeds and lower gas costs.

Antes de poder hacer consultas a tu subgrafo, los indexadores deben comenzar a responder a las consultas sobre él. Para simplificar este proceso, puedes curar tu propio subgrafo utilizando GRT.

Al momento de escribir este artículo, se recomienda que cures tu propio subgrafo con 10,000 GRT para asegurarte de que esté indexado y disponible para consultas lo antes posible.

Para ahorrar en costos de gas, puedes curar tu subgrafo en la misma transacción en la que lo publicas seleccionando este botón al publicar tu subgrafo en la red descentralizada de The Graph:

Subgraph publish

8. Consulta tu subgrafo

Enlace a esta sección

Ahora puedes hacer consultas a tu subgrafo enviando consultas GraphQL a la URL de consulta de tu subgrafo, que puedes encontrar haciendo clic en el botón de consulta.

Puedes consultar desde tu dapp si no tienes tu clave de API a través de la URL de consulta temporal, libre y de tarifa limitada, que puede utilizarse para el desarrollo y la puesta en marcha.

For more information about querying data from your subgraph, read more here.

Editar página

Anterior
Guía de las Herramientas de Transferencia a L2
Siguiente
Redes admitidas
Editar página