Começo Rápido

Reading time: 5 min

Este guia explicará rapidamente como inicializar, criar, e lançar o seu subgraph ao Subgraph Studio.

Garanta que o seu subgraph indexará dados de uma rede apoiada.

Este guia presume que tem:

  • Uma carteira de criptomoedas
  • Um endereço de contrato inteligente na rede da sua escolha

1. Como criar um subgraph no Subgraph Studio

Link para esta seção

Entre no Subgraph Studio e conecte a sua carteira de criptomoedas.

Quando a sua carteira estiver conectada, clique em "Criar um Subgraph". Vale nomear o subgraph em Title Case: "Nome Do Subgraph Nome Da Chain."

2. Como instalar a Graph CLI

Link para esta seção

A Graph CLI é escrita em TypeScript e precisa ter instalado o node, e npm ou yarn para ser isada. Verifique se tem a versão mais recente da CLI instalada.

Execute um dos seguintes comandos na sua máquina local:

Uso de npm:

npm install -g @graphprotocol/graph-cli@latest

Uso de yarn:

yarn global add @graphprotocol/graph-cli

3. Como inicializar o seu subgraph de um contrato existente

Link para esta seção

Inicialize o seu subgraph a partir de um contrato existente ao executar o comando initialize:

graph init --studio <SUBGRAPH_SLUG>

Veja comandos para o seu subgraph específico na página do subgraph no Subgraph Studio.

Ao inicializar o seu subgraph, a ferramenta CLI pedirá pelas seguintes informações:

  • Protocolo: Escolha o protocolo do qual o subgraph indexará dados
  • Slug do subgraph: crie um nome para o seu subgraph. O slug serve como uma identidade para o seu subgraph.
  • Diretório onde o subgraph será criado: escolha o seu diretório local
  • Rede Ethereum (opcional): é possível que tenha de especificar a rede compatível com EVM de onde o seu subgraph indexará dados
  • Endereço de contrato: Localize o endereço do contrato inteligente do qual quer consultar dados
  • ABI: Se a ABI não estiver preenchida automaticamente, insira-a manualmente como um arquivo JSON
  • Bloco Inicial: Insira o bloco inicial para poupar tempo enquanto o seu subgraph indexa dados da blockchain. O bloco inicial pode ser localizado ao encontrar o bloco onde o seu contrato foi lançado.
  • Nome do Contrato: insira o nome do seu contrato
  • Indexar eventos de contrato como entidades: é sugerido configurar isto como true, já que ele automaticamente adicionará mapeamentos ao seu subgraph para cada evento emitido
  • Adicionar outro contrato (opcional): adicionar outro contrato

Veja a imagem a seguir para um exemplo do que esperar quando for inicializar o seu subgraph:

Comando do subgraph

4. Como escrever o seu subgraph

Link para esta seção

O comando interior cria um subgraph de altura que pode ser usado como ponto de partida para construir o seu subgraph. Enquanto faz mudanças ao subgraph, trabalhará principalmente com três arquivos:

  • Manifest (subgraph.yaml) - O manifest define quais fontes de dados serão indexadas pelos seus subgraphs.
  • Schema (schema.graphql) - O schema GraphQL define quais dados deseja retirar do subgraph.
  • Mapeamentos em AssemblyScript (mapping.ts) — Este é o código que traduz dados das suas fontes de dados às entidades definidas no schema.

Para mais informações sobre como escrever o seu subgraph, veja Como Criar um Subgraph.

5. Lançamento no Subgraph Studio

Link para esta seção

Quando o seu subgraph estiver escrito, execute os seguintes comandos:

$ graph codegen
$ graph build
  • Autentique e lance o seu subgraph. A chave de lançamento (deploy key) pode ser encontrada na página "Subgraph" do Subgraph Studio.
$ graph auth --studio <DEPLOY_KEY>
$ graph deploy --studio <SUBGRAPH_SLUG>

Há de inserir um rótulo de versão. É altamente recomendado usar o semver para números de versão, como 0.0.1. Dito isto, dá para escolher qualquer string como versão, por exemplo: v1, version1, asdf.

6. Como testar o seu subgraph

Link para esta seção

No ambiente de testes do Subgraph Studio, é possível testar o seu subgraph ao fazer uma query de exemplo.

Os logs dirão-lhe se há quaisquer erros com o seu subgraph. Os logs de um subgraph operacional parecerão com isto:

Logs do subgraph

Se o seu subgraph continuar a falhar, faça um query sobre a saúde do subgraph com o GraphiQL Playground. Perceba que dá para usar o query abaixo e inserir sua ID de lançamento para seu subgraph. Neste caso, Qm... é a ID de lançamento (na página Subgraph sob Detalhes). O texto abaixo te dirá quando um subgraph falha para que você possa fazer o debug de acordo:

{
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. Como Editar o Seu Subgraph na Rede Descentralizada do The Graph

Link para esta seção

Quando o seu subgraph for lançado ao Subgraph Studio, estiver testado, e estiver pronto para produção, poderá então editá-lo na rede descentralizada.

No Subgraph Studio, será possível clicar no botão de editar no canto superior direito da página do seu subgraph.

Selecione a rede onde quer editar o seu subgraph. Vale editar subgraphs no Arbitrum One, para aproveitar as transações mais rápidas e custos menores de gas.

O (Indexador de atualização)[/sunrise/#about-the-upgrade-indexer] começará a servir queries no seu subgraph independente da curadoria dele, e fornecerá 100 mil queries grátis por mês.

Para uma qualidade maior de serviço e redundâncias mais fortes, é possível curar o seu subgraph para atrair mais Indexadores. Na hora da criação deste artigo, é recomendado curar o seu próprio subgraph com, no mínimo, 3.000 GRT para garantir que 3 a 5 Indexadores a mais comecem a servir queries no seu subgraph.

Para poupar custos de gas, cure o seu subgraph na mesma transação em que ele foi publicado, ao selecionar este botão quando publicar o seu subgraph na rede descentralizada do The Graph:

Editar subgraph

8. Queries no seu subgraph

Link para esta seção

Agora, podes consultar o seu subgraph com o envio de queries GraphQL para o URL de Query do seu subgraph, que pode ser visto ao clicar no botão Query.

Se não tiver a sua chave API, é possível fazer queries via o URL de query de desenvolvimento com limite de ritmo, que pode ser usado para desenvolvimento e encenações.

Para mais informações sobre queries de dados do seu subgraph, leia mais aqui.

Editar página

Anterior
Guia das Ferramentas de Transferência para L2
Próximo
Subgraphs
Editar página