Firebase Realtime Database profil aracı komutu
İşletim sisteminizdeki işlemlerin hız ve bant genişliği kullanımına ilişkin bir rapor oluşturmak için Realtime Database örneği için aşağıdaki komutu kullanın:
firebase database:profile
İşaretleme seçenekleri | Açıklama |
---|---|
-h, --help |
Çıkış kullanım bilgileri. |
-o, --output FILENAME |
Çıkışı belirtilen dosyaya kaydedin. |
-i, --input FILENAME |
Raporu akış günlükleri yerine belirtilen dosyayı temel alarak oluştur sunucudan kaldıracak. |
-d, --duration SECONDS |
Belirtilen saniye boyunca veritabanı kullanım bilgilerini toplayın. |
--raw |
Toplanan ham istatistikleri yeni satırla sınırlandırılmış JSON olarak gönderin. |
İşlem türleri
eşzamanlı bağlantı
Bu işlem, veritabanına gerçek zamanlı bağlantıları yansıtır (örneğin, SDK aracılığıyla yeni bir istemci bağlanır). RESTful bağlantılar şuna yansıtılmaz: eşzamanlı bağlantı işlemleri
{ "name": "concurrent-connect", "timestamp": 1484776334900 }
eş zamanlı bağlantı kesilmesi
Eşzamanlı-bağlantı kesilmesi, (örneğin, bir istemcinin bağlantısını kestiğinde veya oturumu tamamladığında) veri alışverişi yapabilirsiniz.
{ "name": "concurrent-disconnect", "timestamp": 1484776341844 }
gerçek zamanlı-yazma
Gerçek zamanlı bağlantılardan yazma istekleri. Örneğin, set()
ve push()
işlemleri için kullanılır. Silme istekleri de realtime-write
olarak sayılır
işlemleri için geçerlidir ve 0 baytlık yazmaları yansıtır.
{ "allowed": true, // If security rules allow the operation "bytes": 1, "millis": 2, "name": "realtime-write", "path": [ "foo" ], "timestamp": 1484776538763 }
gerçek zamanlı-işlem
Bu işlem türü, gerçek zamanlı bağlantılar üzerinden gerçekleştirilen işlemleri içerir. Tekrarlanan işlemler, başarısız deneme ve yeniden denemelerin sonucu olabilir.
{ "allowed": true, "bytes": 20, "millis": 2, "name": "realtime-transaction", "path": [ "foo" ], "timestamp": 1484776854610 }
gerçek zamanlı-güncelleme
Güncellemelere ilişkin bu gerçek zamanlı işlemler, belirli verilerin fazlalıklarını yansıtır,
realtime-write
içinde daha genel yazma işlemleri yapılır.
{ "allowed": true, "bytes": 5, "millis": 2, "name": "realtime-update", "path": [ "foo" ], "timestamp": 1484776538769 }
dinleyiciyi dinle
Bu işlemler, belirli bir konumla ilgili olarak şu tarihteki ilk veri isteğini yansıtır:
anlatabilmişimdir. Örneğin, web istemcileri için on()
veya once()
yöntemleri.
{ "allowed": true, "bytes": 0, "millis": 26, "name": "listener-listen", "path": [ "foo" ], "querySet": [], "timestamp": 1484776335024, "unIndexed": false }
dinleyici-anons
Bu işlem, sunucudan gönderilen tüm istemcilere gönderilen verileri kapsar. her yazma ve güncelleme işleminden sonra belirli bir konumda dinleme yapar. İlgili içeriği oluşturmak için kullanılan bir yayın işlemine dönüşür. Ancak 0 güncelleme görebilirsiniz müşteri olup olmadığını test edebilirsiniz.
{ "bytes": 56, // Total bytes sent across clients "clientsUpdated": 3, // This may be 0 if no clients are listening "millis": 17, "name": "listener-broadcast", "path": [ "baz", "mar" ], "timestamp": 1484775969928 }
dinleyici-dinleme
Bu işlemler, dinleyen veya dinlemeyi bırakan istemcileri yansıtır.
kaldırma yöntemleriyle (örneğin, web için off()
veya removeAllObservers
)
).
{ "name": "listener-unlisten", "path": [ "foo" ], "timestamp": 1484776335044 }
dinlenme
REST üzerinden GET
istek
API'ye gidin.
{ "allowed": true, "bytes": 348, // This would be 0 if the read data was null "millis": 26, "name": "rest-read", "path": [], "querySet": [ { "default": true, "endIndexValue": "[MAX_NAME]", "equality": false, "index": {}, "limit": null, "range": false, "simpleLimit": false, "startIndexValue": "[MIN_NAME]", "viewFrom": null } ], "timestamp": 1484775747416 }
geri-yazma
PUT
ve
REST üzerinden POST
isteği
API'ye gidin.
DELETE
istekleri yansıtılıyor
0 baytlık rest-write
işlemi.
{ "allowed": true, "bytes": 13, "millis": 116, "name": "rest-write", "path": [], "timestamp": 1484775917216 }
dinlenme-işlem
İşleme benzer davranış için
koşullu İstekler.
rest-transaction
işlemi, Etag
veya if-match
kullanan istekleri yakalar.
başlıklar.
{ "allowed": true, "bytes": 13, "millis": 116, "name": "rest-transaction", "path": [], "timestamp": 1484775917216 }
dinlenme-güncelleme
REST API üzerinden yapılan güncellemeler PATCH
isteklerini yansıtır.
{ "allowed": true, "bytes": 5, "millis": 11, "name": "rest-update", "path": [ "baz", "mar" ], "timestamp": 1484775969930 }
bağlantı kesilme noktası
Bu işlemler, yazma işlemi için onDisconnect
işleyicilerin eklenmesini yansıtır
anlamına gelir. Örneğin, onDisconnect().setValue()
kullandığınızda.
{ "allowed": true, "bytes": 4, "millis": 2, "name": "on-disconnect-put", "path": [ "baz", "mar" ], "timestamp": 1484775969930 }
bağlantıyı kesildiğinde-güncelleme
Bu işlemler, güncellemek için onDisconnect
işleyicinin eklenmesini yansıtır
anlamına gelir. Örneğin, onDisconnect().updateChildren()
kullandığınızda.
{ "allowed": true, "bytes": 4, "millis": 2, "name": "on-disconnect-update", "path": [ "baz", "mar" ], "timestamp": 1484775969930 }
bağlantı kesildiğinde-iptal
Bu işlemler, onBağlantıyı kesen dinleyicilerin kaldırılmasını yansıtır.
Örneğin, onDisconnect().set().cancel()
kullandığınızda.
{ "millis": 2, "name": "on-disconnect-cancel", "path": [ "baz", "mar" ], "timestamp": 1484775969930 }
bağlantı kesildiğinde çalıştırma
Bu işlemler, onDisconnect
işleyicilerinin tetiklenmesini yansıtır.
Gerçek zamanlı bir istemci en az bir onDisconnect
ekledikten sonra bağlantıyı kestiğinde
işleyici, profil aracı tek bir run-on-disconnect
işlemi kaydeder
(tüm onDisconnect
dinleyicilerinin toplam baytlarını ve zamanını yansıtmak için)
tetiklendi.
{ "bytes": 4, "millis": 2, "name": "run-on-disconnect", "timestamp": 1484775969930 }