Bir Fan Token'ın transferlerini takip edin

Chiliz Chain üzerindeki Fan Token hareketlerini izlemek, en sevdiğiniz tokenların etkinliğini takip etmenin harika bir yoludur. Bunu potansiyel bir gösterge paneli için yapı taşı olarak kullanarak, verileri düzenleyip nelerin popüler olduğunu ve nelerin olmadığını gösteren içgörüler sağlayabilirsiniz.

Fan Token™ hareketlerini takip ederken hızla bir zorlukla karşılaşırsınız: Verileri doğrudan blok zincirinden okumak, mevcut durum için verimlidir ("X cüzdanının bakiyesi nedir?"), ancak geçmiş veriler için verimsizdir ("Son bir yıl içinde X cüzdanını içeren tüm transferleri göster").

Bunu çözmek için subgraph’leri kullanabiliriz.

Subgraph’ler hakkında

Bir Subgraph, bir blok zincirinden veri çeken, bunları işleyen ve kolayca sorgulanabilmeleri için depolayan özel bir API’dir. Veri gerektiğinde blok zincirinden her seferinde milyonlarca bloğu taramasını istemek yerine, bir subgraph gerçekleştiği anda belirli olayları indeksler ve bunları bir veritabanında saklar.

Chiliz Chain, sektör standardı indeksleme protokollerini destekler. Projenizin ihtiyaçlarına en uygun sağlayıcıyı seçebilirsiniz:

  • The Grapharrow-up-right: Merkeziyetsiz indeksleme için sektör standardı. Subgraph’inizi indeksleyicilerden oluşan merkeziyetsiz bir ağa dağıtmanıza olanak tanır.

  • Goldskyarrow-up-right: Yüksek performanslı, barındırılan bir indeksleme hizmeti. The Graph’ün koduyla tamamen uyumludur (çoğu zaman aynı kodu kullanabilirsiniz) ancak daha hızlı indeksleme hızları ve gerçek zamanlı veri akışı özellikleri sunar.

Her iki araç da aynı geliştirme çerçevesini kullanır, bu nedenle bu sayfadaki adımların çoğu her ikisi için de uygulanabilir.

Örneğin PSG Fan Token transferlerini nasıl takip edebileceğimize bakalım...

0. Bir araç seçin

Chiliz Chain üzerinde bir subgraph dağıtmak için şunları kullanabilirsiniz: The Graph (merkeziyetsiz ağ) veya Goldsky (barındırılan indeksleyici). Kod yapısı aynıdır; yalnızca dağıtım komutları farklıdır.

Elbette kendi dokümanlarına da başvurabilirsiniz:

1. Bir subgraph projesi başlatın

Hem The Graph hem de Goldsky, graph’inizi oluşturmak için CLI tabanlı yöntemler sunar.

circle-info

The Graph’ün Subgraph Studioarrow-up-rightadlı bir aracı vardır; buraya Web3 hesabınızla bağlanabilir, ardından arayüz üzerinden bir subgraph oluşturabilirsiniz.

Goldsky size bir kontrol paneliarrow-up-right sağlar; bir hesap oluşturduğunuzda buradan bir subgraph oluşturabilirsiniz.

Graph CLI’yi yükleyin⁠

Yerel makinenizde aşağıdakini çalıştırın:

circle-info

The Graph’in CLI aracını, ister The Graph’in merkeziyetsiz subgraph’leri için ister Goldsky tarafından barındırılan subgraph’ler için kullanarak bir subgraph oluşturabilirsiniz.

Goldsky’nin kendi CLI aracı vardır; Goldsky’ye dağıtım yapmak istiyorsanız buna ihtiyacınız olacak (aşağıya bakın).

Subgraph’inizi başlatın⁠

Bunu, kendi subgraph slug’ınızı eklemek için doğrudan subgraph sayfanızdan kopyalayabilirsiniz:

Şu --studio etiketi isteğe bağlıdır.

PSG Fan Token örneğimizde şunu kullanabiliriz:

Subgraph’iniz hakkında aşağıdakine benzer bazı bilgileri girmeniz istenecektir:

Sözleşmenizin blok gezgininde doğrulanmış olması gerekir; CLI ABI’yi otomatik olarak alacak ve subgraph’inizi kuracaktır. Varsayılan ayarlar, her olay için bir entity oluşturacaktır.

circle-exclamation
circle-info

Subgraph’inizde değişiklik yaparken çoğunlukla üç dosya ile çalışırsınız:

  • Manifest (subgraph.yaml): Subgraph’inizin hangi veri kaynaklarını indeksleyeceğini tanımlar.

  • Şema (schema.graphql): Subgraph’ten hangi verileri almak istediğinizi tanımlar.

  • AssemblyScript Mappings (mapping.ts): Veri kaynaklarınızdaki verileri şemada tanımlanan entity’lere dönüştürür.

Açın subgraph.yaml ve manifest dosyanızın doğru ağı işaret ettiğinden emin olun:

Subgraph’inizi derleyin

Son olarak, hata olmadığından emin olmak için subgraph’inizi derleyin:

2. Dağıtın ve Yayınlayın

Subgraph’iniz oluşturulduktan sonra, dağıtmak için sağlayıcınızı seçin.

The Graph

  1. Bağlanın Subgraph Studioarrow-up-right, bir subgraph oluşturun ve dağıtım anahtarınızı kopyalayın.

  2. CLI üzerinden kimlik doğrulaması yapın: graph auth --studio <DEPLOY_KEY>

  3. Subgraph’inizi Subgraph Studio’ya dağıtın: graph deploy --studio <SUBGRAPH_SLUG>

  4. Studio’ya gidin, subgraph’inizi açın ve subgraph’inizi merkeziyetsiz ağa basmak için "Publish"e tıklayın. Bu, subgraph’inizi Arbitrum One ağında bir NFT olarak yayınlamak için cüzdanınız üzerinden bir işlem başlatacaktır.

Goldsky

  1. Şuraya gidin Goldskyarrow-up-right, "Project Settings" içinde bir API anahtarı oluşturun ve CLI üzerinden giriş yapın.

  2. Yükleyin goldsky komutu: curl https://goldsky.com | sh Ardından CLI üzerinden kimlik doğrulaması yapın: goldsky login

  3. Subgraph’inizi Goldsky’ye yükleyin: goldsky subgraph deploy / --path

Goldsky subgraph’leri dağıtımdan hemen sonra canlı olur. Ek bir yayınlama adımı gerekmez.

circle-info

Bir sürüm etiketi girmeniz istenecektir. Şöyle bir şey girebilirsiniz v0.0.1ama formatı seçmekte özgürsünüz. Bu tamamlandığında, Studio sayfasında subgraph’in senkronize olmaya başladığını göreceksiniz.

circle-info

The Graph’ün akıllı sözleşmeleri tamamen Arbitrum Onearrow-up-rightüzerindedir, ancak subgraph’iniz verileri Chiliz Chain’den indekslemektedir.

3. Subgraph’inizi sorgulayın

Tebrikler! Artık seçtiğiniz hizmetin kontrol panelinde bulunabilen subgraph’in sorgu URL’sine bir GraphQL sorgusu göndererek sorgulamaya başlayabilirsiniz.

Örnek:

The Graph

https://gateway-arbitrum.network.thegraph.com/api/[APIKEY]/subgraphs/id/[ID]

Goldsky

https://api.goldsky.com/api/public/project_[KEY]/subgraphs/[SLUG]/1.0.0/gn

Artık bu uç noktaya GraphQL sorguları göndermeye başlamak için yalnızca bilgilerinizi girmeniz gerekiyor.

Ekler

Örnek Sorgu

Bu sorgu PSG Fan Token’ın tüm işlemlerini gösterir.

Örnek kod

Bunu sorgu URL’sine gönderdiğinizde şu sonuç döner:

Ek kaynaklar

GraphQL ile subgraph’inizden veri sorgulama hakkında daha fazla bilgi için:

Son güncelleme

Bu yararlı oldu mu?