Deploying > Che cos'è il Hosted Service?

Che cos'è il Hosted Service?

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 Sunrise FAQ

Questa sezione illustra come distribuire un subgraph nel hosted service.

Se non si dispone di un account sul hosted service, è possibile registrarsi con il proprio account GitHub. Una volta effettuata l'autenticazione, si può iniziare a creare subgraph attraverso UI e a distribuirli dal proprio terminale. Il hosted service supporta una serie di reti, come Polygon, Gnosis Chain, BNB Chain, Optimism, Arbitrum e altre ancora.

Per un elenco completo, vedere Reti supportate.

Crea un Subgraph

Collegamento a questa sezione

First follow the instructions here to install the Graph CLI. Create a subgraph by passing in graph init --product hosted-service

Da un contratto esistente

Collegamento a questa sezione

Se si dispone già di uno smart contract distribuito sulla rete scelta, l'avvio di un nuovo subgraph da questo contratto può essere un buon modo per iniziare a utilizzare l'hosted service.

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> \

Il <GITHUB_USER> in questo caso è il nome dell'utente GitHub oppure dell'organizzazione, <SUBGRAPH_NAME> è il nome del subgraph, e <DIRECTORY> è il nome opzionale della directory in cui graph init metterà il manifest del subgraph di esempio. Il <CONTRACT_ADDRESS> è l'indirizzo del contratto esistente. <ETHEREUM_NETWORK> è il nome della rete su cui risiede il contratto. <FILE> è un percorso locale a un file ABI del contratto. Entrambi --network e --abi sono opzionali.

Da un subgraph di esempio

Collegamento a questa sezione

La seconda modalità supportata da graph init è la creazione di un nuovo progetto a partire da un subgraph di esempio. Il comando seguente esegue questa operazione:

graph init --from-example --product hosted-service <GITHUB_USER>/<SUBGRAPH_NAME> [<DIRECTORY>]

Il subgraph di esempio si basa sul contratto Gravity di Dani Grant, che gestisce gli avatar degli utenti ed emette eventi NewGravatar oppure UpdateGravatar ogni volta che gli avatar vengono creati o aggiornati. Il subgraph gestisce questi eventi scrivendo entità Gravatar nel negozio Graph Node e assicurandosi che vengano aggiornate in base agli eventi. Continuate con il subgraph manifest per capire meglio a quali eventi dei vostri smart contract prestare attenzione, mappature e altro ancora.

Da un Contratto Proxy

Collegamento a questa sezione

Per costruire un subgraph su misura per il monitoraggio di un contratto Proxy, inizializzare il subgraph specificando l'indirizzo del contratto di implementazione. Una volta concluso il processo di inizializzazione, l'ultimo passo consiste nell'aggiornare il nome della rete nel file subgraph.yaml con l'indirizzo del contratto Proxy. Si può usare il comando seguente.

graph init \
--product hosted-service
--from-contract <IMPLEMENTATION_ADDRESS> \
<GITHUB_USER>/<SUBGRAPH_NAME> [<DIRECTORY>]

Reti supportate sul hosted service

Collegamento a questa sezione

You can find the list of the supported networks here.

Modifica pagina

Precedente
Deploying a Subgraph to Multiple Networks
Successivo
Distribuzione di un subgraph al Hosted Service
Modifica pagina