Vad är värdtjänsten?
Reading time: 3 min
Please note, hosted service endpoints will no longer be available after June 12th 2024 as all subgraphs will need to upgrade to The Graph Network. Please read more in the
I det här avsnittet går vi igenom hur du distribuerar en undergraf till .
Om du inte har ett konto på den hostade tjänsten kan du registrera dig med ditt GitHub-konto. När du har autentiserat dig kan du börja skapa undergrafer via användargränssnittet och distribuera dem från din terminal. Värdtjänsten stöder ett antal nätverk, till exempel Polygon, Gnosis Chain, BNB Chain, Optimism, Arbitrum med flera.
För en fullständig lista, se .
First follow the instructions to install the Graph CLI. Create a subgraph by passing in graph init --product hosted-service
Om du redan har ett smart kontrakt distribuerat till ditt nätverk kan det vara ett bra sätt att komma igång med värdtjänsten genom att starta upp en ny subgraf från detta kontrakt.
You can use this command to create a subgraph that indexes all events from an existing contract. This will attempt to fetch the contract ABI from the block explorer.
graph init \--product hosted-service--from-contract <CONTRACT_ADDRESS> \<GITHUB_USER>/<SUBGRAPH_NAME> [<DIRECTORY>]
Additionally, you can use the following optional arguments. If the ABI cannot be fetched from the block explorer, it falls back to requesting a local file path. If any optional arguments are missing from the command, it takes you through an interactive form.
--network <ETHEREUM_NETWORK> \--abi <FILE> \
<GITHUB_USER>
är i det här fallet din GitHub-användare eller organisationsnamn, <SUBGRAPH_NAME>
är namnet på din subgraf och <DIRECTORY>
är det valfria namnet på katalogen där graph init
kommer att placera exemplets subgrafmanifest. <CONTRACT_ADDRESS>
är adressen till ditt befintliga kontrakt. <ETHEREUM_NETWORK>
är namnet på nätverket som kontraktet lever på. <FILE>
är en lokal sökväg till en kontrakts ABI-fil. Både --nätverk
och --abi
är valfria.
Det andra läget som graph init
stöder är att skapa ett nytt projekt från ett exempel på en undergraf. Följande kommando gör detta:
graph init --from-example --product hosted-service <GITHUB_USER>/<SUBGRAPH_NAME> [<DIRECTORY>]
Exemplet är baserat på Gravity-kontraktet av Dani Grant som hanterar användaravatarer och sänder ut NewGravatar
eller UpdateGravatar
-händelser närhelst avatarer skapas eller uppdateras. Subgrafen hanterar dessa händelser genom att skriva Gravatar
-entiteter till Graph Node-arkivet och se till att dessa uppdateras i enlighet med händelserna. Fortsätt till för att bättre förstå vilka händelser från dina smarta kontrakt du ska uppmärksamma, mappningar och mer.
To build a subgraph tailored for monitoring a Proxy contract, initialize the subgraph by specifying the address of the implementation contract. Once the initialization process is concluded, the last step involves updating the network name in the subgraph.yaml file to the address of the Proxy contract. You can use the command below.
graph init \--product hosted-service--from-contract <IMPLEMENTATION_ADDRESS> \<GITHUB_USER>/<SUBGRAPH_NAME> [<DIRECTORY>]