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 Graph: Merkeziyetsiz indeksleme için sektör standardı. Subgraph’inizi indeksleyicilerden oluşan merkeziyetsiz bir ağa dağıtmanıza olanak tanır.
Goldsky: 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.
The Graph’ün Subgraph Studioadlı bir aracı vardır; buraya Web3 hesabınızla bağlanabilir, ardından arayüz üzerinden bir subgraph oluşturabilirsiniz.
Goldsky size bir kontrol paneli 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:
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.
Not:
Eğer sözleşme, PSG Fan Token’da olduğu gibi bir proxy kullanıyorsa, bunun yerine implementation sözleşmesinin adresini kullanın. Bunu, sözleşmenin blok gezgini sayfasındaki "Read/write contract" sekmesinde göreceksiniz. Örneğin, Chiliz Block Explorer’daki PSG Fan token sözleşmesini burada görün.
Eğer bir proxy’nin implementation sözleşme adresini girmek zorunda kaldıysanız, proje kurulduktan sonra manifest dosyasına (
subgraph.yaml) gidin ve sözleşme adresini proxy’nin adresiyle değiştirin.
Start Block otomatik olarak alınmazsa, sözleşmenin oluşturulduğu blok numarasını manuel olarak girebilirsiniz. Bunu blok gezgininden öğrenebilirsiniz.
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
Bağlanın Subgraph Studio, bir subgraph oluşturun ve dağıtım anahtarınızı kopyalayın.
CLI üzerinden kimlik doğrulaması yapın:
graph auth --studio <DEPLOY_KEY>Subgraph’inizi Subgraph Studio’ya dağıtın:
graph deploy --studio <SUBGRAPH_SLUG>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
Şuraya gidin Goldsky, "Project Settings" içinde bir API anahtarı oluşturun ve CLI üzerinden giriş yapın.
Yükleyin
goldskykomutu:curl https://goldsky.com | shArdından CLI üzerinden kimlik doğrulaması yapın:goldsky loginSubgraph’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.
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.
The Graph’ün akıllı sözleşmeleri tamamen Arbitrum Oneü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?