Firebase Realtime Database profil aracı komutu
Kuruluşunuzdaki işlemlerde 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ı kesme
Eşzamanlı-bağlantı kesilmesi, (örneğin, bir istemcinin bağlantısını kestiğinde veya onayladığında) izin verilmez.
{ "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 }