Skip to content

Latest commit

 

History

History
168 lines (118 loc) · 7.51 KB

quick-start.mdx

File metadata and controls

168 lines (118 loc) · 7.51 KB
title
Schnellstart

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

Stellen Sie sicher, dass Ihr Subgraph Daten aus einem [unterstützten Netzwerk] (/developing/supported-networks) indiziert.

Bei der Erstellung dieses Leitfadens wird davon ausgegangen, dass Sie über die entsprechenden Kenntnisse verfügen:

  • Eine Smart-Contract-Adresse im Netzwerk Ihrer Wahl nach
  • GRT, um Ihren Subgraphen zu kuratieren
  • Eine Krypto-Wallet

1. Erstellen Sie einen Untergraphen in Subgraph Studio

Go to the Subgraph Studio and connect your wallet.

Sobald die Verbindung hergestellt ist, können Sie auf " Subgraph erstellen" klicken. Wählen Sie das Netzwerk Ihrer Wahl und klicken Sie auf "Weiter".

2. Installieren der Graph-CLI

Die Graph-CLI ist in JavaScript geschrieben und Sie müssen entweder npm oder yarn installiert haben, um sie zu verwenden.

Führen Sie einen der folgenden Befehle auf Ihrem lokalen Computer aus:

Using npm:

npm install -g @graphprotocol/graph-cli

Using yarn:

yarn global add @graphprotocol/graph-cli

3. Initialize your Subgraph

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

Wenn Sie Ihren Untergraphen initialisieren, fragt das CLI-Tool Sie nach den folgenden Informationen:

  • Protokoll: Wählen Sie das Protokoll aus, von dem Ihr Untergraph ( Subgraph ) Daten indizieren soll.
  • Subgraph slug: Erstellen Sie einen Namen für Ihren Subgraphen. Ihr Subgraph-Slug ist ein Identifikationsmerkmal für Ihren Subgraphen.
  • Verzeichnis zur Erstellung des Subgraphen: Wählen Sie Ihr lokales Verzeichnis
  • Ethereum-Netzwerk (optional): Sie müssen ggf. angeben, von welchem EVM-kompatiblen Netzwerk Ihr Subgraph Daten indizieren soll.
  • Vertragsadresse: Suchen Sie die Smart-Contract-Adresse, von der Sie Daten abfragen möchten
  • ABI: Wenn die ABI nicht automatisch ausgefüllt wird, müssen Sie sie manuell in Form einer JSON-Datei eingeben.
  • Startblock: Es wird empfohlen, den Startblock einzugeben, um Zeit zu sparen, während Ihr Subgraph die Blockchain-Daten indiziert. Sie können den Startblock finden, indem Sie den Block suchen, in dem Ihr Vertrag bereitgestellt wurde.
  • Vertragsname: Geben Sie den Namen Ihres Vertrags ein
  • Index contract events as entities (Vertragsereignisse als Entitäten): Es wird empfohlen, dies auf true (wahr) zu setzen, da es automatisch Zuordnungen zu Ihrem Subgraph für jedes emittierte Ereignis hinzufügt
  • Einen weiteren Vertrag hinzufügen (optional): Sie können einen weiteren Vertrag hinzufügen

Initialisieren Sie Ihren Subgraphen anhand eines bestehenden Vertrags, indem Sie den folgenden Befehl ausführen:

graph init --studio <SUBGRAPH_SLUG>

Der folgende Screenshot zeigt ein Beispiel dafür, was Sie bei der Initialisierung Ihres Untergraphen ( Subgraph ) erwarten können:

Subgraph command

4. Schreiben Sie Ihren Untergraph

Die vorangegangenen Befehle erstellen einen gerüstartigen Subgraphen, den Sie als Ausgangspunkt für den Aufbau Ihres Subgraphen verwenden können. Wenn Sie Änderungen an dem Subgraphen vornehmen, werden Sie hauptsächlich mit

  • Manifest (subgraph.yaml) - Das Manifest definiert, welche Datenquellen Ihre Subgraphen indizieren werden.
  • Schema (schema.graphql) - Das GraphQL-Schema definiert, welche Daten Sie aus dem Subgraph abrufen möchten.
  • AssemblyScript Mappings (mapping.ts) - Dies ist der Code, der die Daten aus Ihren Datenquellen in die im Schema definierten Entitäten übersetzt.

For more information on how to write your subgraph, see Creating a Subgraph.

5. Bereitstellung für das Subgraph Studio

Sobald Ihr Subgraph geschrieben ist, führen Sie die folgenden Befehle aus:

$ graph codegen
$ graph build
  • Authentifizieren Sie Ihren Subgraphen und stellen Sie ihn bereit. Den Bereitstellungsschlüssel finden Sie auf der Seite "Subgraph" in 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. Testen Sie Ihren Untergraphen ( Subgraphen )

Sie können Ihren Untergraphen testen, indem Sie eine Beispielabfrage im Playground-Bereich erstellen.

In den Protokollen können Sie sehen, ob es Fehler in Ihrem Subgraphen gibt. Die Protokolle eines funktionierenden Subgraphen sehen wie folgt aus:

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. Veröffentlichen Sie Ihren Subgraphen im dezentralen Netzwerk von The Graph

Sobald Ihr Subgraph im Subgraph Studio bereitgestellt wurde, Sie ihn getestet haben und bereit sind, ihn in Betrieb zu nehmen, können Sie ihn im dezentralen Netzwerk veröffentlichen.

Klicken Sie im Subgraph Studio auf Ihren Subgraphen. Auf der Seite des Subgraphen können Sie oben rechts auf die Schaltfläche "Veröffentlichen" klicken.

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.

Bevor Sie Ihren Subgraphen abfragen können, müssen die Indexer damit beginnen, die Abfragen zu verarbeiten. Bevor Sie Ihren Subgraphen abfragen können, müssen die Indexer damit beginnen, die Abfragen zu bedienen.

Zum Zeitpunkt der Erstellung dieses Dokuments wird empfohlen, einen eigenen Subgraphen mit 10.000 GRT zu kuratieren, um sicherzustellen, dass er so schnell wie möglich indiziert und für Abfragen verfügbar ist.

Um Gaskosten zu sparen, können Sie Ihren Subgraphen in der gleichen Transaktion kuratieren, in der Sie ihn veröffentlicht haben, indem Sie diese Schaltfläche auswählen, wenn Sie Ihren Subgraphen im dezentralen Netzwerk von The Graph veröffentlichen:

Subgraph publish

8. Abfrage Ihres Subgraphen

Jetzt können Sie Ihren Subgraphen abfragen, indem Sie GraphQL-Abfragen an die Abfrage-URL Ihres Subgraphen senden, die Sie durch Klicken auf die Abfrage-Schaltfläche finden können.

Wenn Sie Ihren API-Schlüssel nicht haben, können Sie von Ihrer App aus eine Abfrage über die kostenlose, zeitlich begrenzte Abfrage-URL durchführen, die für die Entwicklung und das Bereitstellen verwendet werden kann.

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