Daha ayrıntılı analiz için Performans İzleme verilerini Apple ve Android uygulamalarından BigQuery'ye aktarabilirsiniz. BigQuery, verileri BigQuery SQL kullanarak analiz etmenize, başka bir bulut sağlayıcıya aktarmanıza ve hatta verileri özel makine öğrenimi modelleriniz için kullanmanıza olanak tanır.
BigQuery dışa aktarmayı etkinleştir
Firebase konsolunda Entegrasyonlar sayfasına gidin ve ardından BigQuery kartında Bağlantı'yı tıklayın.
BigQuery'yi etkinleştirmek için ekrandaki talimatları izleyin.
Performans İzleme için BigQuery dışa aktarmayı etkinleştirdiğinizde aşağıdakiler gerçekleşir:
Firebase, mevcut verilerinizin bir kopyasını BigQuery'ye aktarır . Verilerin dışa aktarım için ilk yayılımının tamamlanması 48 saate kadar sürebilir.
Veri kümesi oluşturulduktan sonra konum değiştirilemez ancak veri kümesini farklı bir konuma kopyalayabilir veya veri kümesini manuel olarak farklı bir konuma taşıyabilir (yeniden oluşturabilirsiniz). Daha fazla bilgi edinmek için bkz . Veri kümesi konumunu değiştirme .
Firebase, verilerinizin Firebase projenizden BigQuery'ye düzenli senkronizasyonunu ayarlar. Bu günlük ihracat işlemleri genellikle planlandıktan 24 saat sonra tamamlanır.
Varsayılan olarak projenizdeki tüm uygulamalar BigQuery'ye bağlıdır. Daha sonra projeye eklediğiniz tüm uygulamalar otomatik olarak BigQuery'ye bağlanır. Hangi uygulamaların veri göndereceğini yönetebilirsiniz .
BigQuery dışa aktarmayı devre dışı bırakmak için Firebase konsolunda projenizin bağlantısını kaldırın .
BigQuery'ye hangi veriler aktarılır?
Projedeki her uygulama için dışa aktarma, yakalanan tüm performans olaylarını içeren bir tablo oluşturur. Tablodaki her satır aşağıdakilerden biri olabilecek tek bir performans olayıdır:
Süre izleme — varsayılan olarak uygulama başlangıcı, ön plandaki uygulama ve arka plandaki uygulamanın yanı sıra geliştirici tarafından sağlanan özel kod izlemelerini içeren "süre" metriğini toplayan izlemeler
-
event_type
DURATION_TRACE
-
event_name
izleme adıyla aynı
-
İzleme metriği — geliştirici tarafından sağlanan özel kod izlemeleriyle ilişkili özel metrikler
-
event_type
TRACE_METRIC
-
event_name
metriğin adıdır -
parent_trace_name
bu ölçümü içeren izleme adıdır
-
Ekran izleme — bir ekranın ömrünü kapsayan izler (ekran oluşturma izleri)
-
event_type
:SCREEN_TRACE
-
event_name
_st_
öneki artı gerçek ekran adıdır
-
Ağ isteği — bir ağ isteğinin ömrünü kapsayan izler (HTTP ağ isteği izleri)
-
event_type
:NETWORK_REQUEST
-
event_name
, ağ isteği URL'sinin kategorize edilmiş modelidir
-
Her performans olayı, olayın niteliklerinin (istemci cihazının ülkesi ve operatörü gibi) yanı sıra etkinliğe özgü bilgileri içerir:
- Süre izleri, iz metrikleri ve ekran izleri
trace_info
içerir - İzleme metrikleri
trace_info.metric_info
içerir - Ekran izlemeleri
trace_info.screen_info
içerir - Ağ izlemeleri
network_info
içerir
Ayrıntılı veri şeması
Alan adı | Tip | Tanım |
---|---|---|
event_timestamp | zaman damgası | İstemci cihazında olayın başlatıldığı Epoch'tan bu yana zaman damgası (izleme başlangıcı, ağ başlangıcı vb.) |
app_display_version | sicim | Uygulamanın sürümünü görüntüleyin (örneğin, "4.1.7")
|
app_build_version | sicim | Uygulamanın sürümünü oluşturun (örneğin, "1523456")
|
OS sürümü | sicim | İstemci cihazının işletim sistemi sürümü
|
cihaz adı | sicim | İstemci cihazının adı (örneğin, "Google Pixel") |
ülke | sicim | Etkinliğin gerçekleştiği ülkenin iki harfli ülke kodu (örneğin, "ABD" veya bilinmeyen ülke için "ZZ") |
taşıyıcı | sicim | İstemci cihazının taşıyıcısı |
radyo_tipi | sicim | Olayın gerçekleştiği andaki aktif radyo türü (örneğin, "WIFI") |
özel_attributes | DİZİ<KAYIT> | Bu etkinliğe eklenen tüm özel özellikler |
özel_attributes.key | sicim | Özel özelliğin anahtarı |
özel_attributes.value | sicim | Özel özelliğin değeri |
etkinlik tipi | sicim | Etkinliğin türü; olası değerler:
|
etkinlik adı | sicim | Etkinliğin adı
|
parent_trace_name | sicim | İzleme metriğini taşıyan üst izlemenin adı Yalnızca TRACE_METRIC için mevcut |
trace_info | KAYIT | Yalnızca DURATION_TRACE , SCREEN_TRACE ve TRACE_METRIC için mevcut |
trace_info.duration_us | int64 |
|
trace_info.screen_info | KAYIT | Yalnızca SCREEN_TRACE için mevcut |
trace_info.screen_info.slow_frame_ratio | kayan nokta64 | Bu ekran izleme için yavaş karelerin oranı, 0 ile 1 arasında (örneğin, 0,05 değeri, bu ekran örneği için karelerin %5'inin oluşturulmasının 16 ms'den fazla sürdüğü anlamına gelir) |
trace_info.screen_info.frozen_frame_ratio | kayan nokta64 | Bu ekran izlemesi için dondurulmuş karelerin oranı, 0 ile 1 arasında (örneğin, 0,05 değeri, bu ekran örneği için karelerin %5'inin oluşturulmasının 700 ms'den fazla sürdüğü anlamına gelir) |
trace_info.metric_info | KAYIT | Yalnızca TRACE_METRIC için mevcut |
trace_info.metric_info.metric_value | int64 | İzleme metriğinin değeri |
Ağ bilgisi | KAYIT | Yalnızca NETWORK_REQUEST için mevcut |
network_info.response_code | int64 | Ağ yanıtına ilişkin HTTP yanıt kodu (örneğin, 200, 404) |
network_info.response_mime_type | sicim | Ağ yanıtının MIME türü (örneğin, "text/html") |
network_info.request_http_method | sicim | Ağ isteğinin HTTP yöntemi (örneğin, "GET" veya "POST") |
network_info.request_payload_bytes | int64 | Ağ isteği yükünün boyutu Birim: bayt |
network_info.response_payload_bytes | int64 | Ağ yanıtı yükünün boyutu Birim: bayt |
network_info.request_completed_time_us | int64 | Ağ isteği gönderimi tamamlandığında event_timestamp mikrosaniye sonraBirim: mikrosaniye |
network_info.response_initiated_time_us | int64 | Ağ yanıtı başlatıldığında event_timestamp sonraki mikrosaniyeBirim: mikrosaniye |
network_info.response_completed_time_us | int64 | Ağ yanıtı tamamlandığında event_timestamp sonraki mikrosaniyeBirim: mikrosaniye |
Dışa aktarılan verilerle ne yapabilirsiniz?
Aşağıdaki bölümlerde BigQuery'de dışa aktarılan Performans İzleme verilerinize karşı çalıştırabileceğiniz sorgu örnekleri sunulmaktadır.
Ülkeye göre ortalama uygulama başlatma gecikmesi dökümünü görüntüleyin
SELECT AVG(trace_info.duration_us), country FROM `TABLE_NAME` WHERE _PARTITIONTIME > TIMESTAMP("YYYY-MM-DD") AND event_type = "DURATION_TRACE" AND event_name = "_app_start" GROUP BY 2;
Dondurulmuş karelerin oranını çeşitli koşullara göre kontrol edin
Örneğin, dondurulmuş karelerin oranını ve kullanıcıların farklı radyo türlerini (WiFi, 4G vb.) kullanırken uygulamanızın her ekranında geçirdiği süreyi kontrol edebilirsiniz.
SELECT AVG(trace_info.duration_us / 1000000) AS seconds_on_screen, AVG(trace_info.screen_info.frozen_frame_ratio) AS frozen_frame_ratio, event_name, radio_type FROM `TABLE_NAME` WHERE _PARTITIONTIME > TIMESTAMP("YYYY-MM-DD") AND event_type = "SCREEN_TRACE" GROUP BY event_name, radio_type ORDER BY event_name, radio_type;
Diskten belirli dosya türlerini yüklemek için önbellek isabet oranını hesaplayın
Bu analiz, diskten yükleme için file-extension
adlı özel bir öznitelik ve cache-hit
ederse 1
ve önbellek kaçırılırsa 0
ayarlanan önbellek isabeti adlı özel bir ölçüm (bir TRACE_METRIC
) ile diskten yükleme için özel bir kod izlemeyi ayarladığınızı varsayar.
Örneğin PNG dosyalarını diskten yüklemek için önbellek isabet oranını hesaplayabilirsiniz:
SELECT AVG(trace_info.metric_info.metric_value) AS cache_hit_rate FROM `TABLE_NAME` WHERE _PARTITIONTIME > TIMESTAMP("YYYY-MM-DD") AND event_type = "TRACE_METRIC" AND event_name = "cache-hit" AND parent_trace_name = "loadFromDisk" AND STRUCT("file-extension", "png") IN UNNEST(custom_attributes);
Kullanıcıların ağ istekleri yayınladığı günün saatini kontrol edin
Örneğin, ABD'deki kullanıcıların uygulamanızdan ağ isteklerini günün hangi saatinde gerçekleştirdiklerini kontrol edebilirsiniz:
SELECT count(1) AS hourly_count, EXTRACT(HOUR FROM event_timestamp) AS hour_of_day FROM `TABLE_NAME` WHERE _PARTITIONTIME > TIMESTAMP("YYYY-MM-DD") AND event_type = "NETWORK_REQUEST" AND country = "US" GROUP BY 2 ORDER BY 2;
Performans İzleme verilerinizi istediğiniz yere götürün
Bazen Performans İzleme verilerinize sunucu tarafından erişmek veya verileri başka bir üçüncü taraf çözümüne göndermek isteyebilirsiniz. Şu anda verileri dışa aktarmak için herhangi bir ücret alınmamaktadır.
Verilerinizi şu şekilde dışa aktarabilirsiniz:
BigQuery web kullanıcı arayüzünü kullanma
CLI komutunu çalıştırma
bq extract
API veya istemci kitaplıkları aracılığıyla bir çıkarma işi gönderme.
Fiyatlandırma
Performance Monitoring'den veri dışa aktarmak için herhangi bir ücret alınmaz ve BigQuery, cömert, ücretsiz kullanım limitleri sağlar. Ayrıntılı bilgi için BigQuery fiyatlandırmasına veya BigQuery korumalı alanına bakın.