Daha fazla 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 konsolundaki Entegrasyonlar sayfasına gidin, ardından BigQuery kartında Bağlantı'yı tıklayın.
BigQuery'yi etkinleştirmek için ekrandaki talimatları izleyin.
Performance Monitoring 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 . Dışa aktarma için verilerin ilk yayılımının tamamlanması 48 saati bulabilir.
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şıyabilirsiniz (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 dışa aktarma işlemleri genellikle programlandı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 olabilen tek bir performans olayıdır:
Süre izleme — varsayılan olarak, uygulama başlatma, ön planda uygulama ve arka planda uygulama gibi "süre" metriğini ve ayrıca geliştirici tarafından sağlanan tüm özel kod izlerini toplayan izler
-
event_type
DURATION_TRACE
-
event_name
, izleme adıyla aynı
-
İz 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 metriği içeren izleme adıdır
-
Ekran izleme — bir ekranın kullanım ömrünü kapsayan izler (ekran oluşturma izleri)
-
event_type
SCREEN_TRACE
-
event_name
,_st_
ön eki 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
şu:NETWORK_REQUEST
-
event_name
, ağ isteği URL'sinin kategorize edilmiş kalıbıdır
-
Her performans olayı, olayın özelliklerini (istemci cihazın ülkesi ve taşıyıcısı gibi) ve ayrıca olaya özgü bilgileri içerir:
- Süre izlemeleri, izleme metrikleri ve ekran izlemeleri
trace_info
içerir - İzleme metrikleri
trace_info.metric_info
içerir - Ekran izleri
trace_info.screen_info
içerir - Ağ izleri
network_info
içerir
Ayrıntılı veri şeması
Alan adı | Tip | Tanım |
---|---|---|
event_timestamp | zaman damgası | İstemci cihazda olayın başladığı Epoch'tan bu yana zaman damgası (izleme başlangıcı, ağ başlangıcı vb.) |
app_display_version | sicim | Uygulamanın görüntü sürümü (örneğin, "4.1.7")
|
app_build_version | sicim | Uygulamanın derleme sürümü (örneğin, "1523456")
|
OS sürümü | sicim | İstemci aygıtın işletim sistemi sürümü
|
cihaz adı | sicim | İstemci cihazın adı (örneğin, "Google Pixel") |
ülke | sicim | Olayın gerçekleştiği ülkenin iki harfli ülke kodu (örneğin, bilinmeyen ülke için "ABD" veya "ZZ") |
taşıyıcı | sicim | İstemci cihazın taşıyıcısı |
radyo_türü | sicim | Olay gerçekleştiğinde aktif radyo türü (örneğin, "WIFI") |
özel_öznitelikler | DİZİ<KAYIT> | Bu etkinliğe eklenen tüm özel özellikler |
custom_attributes.key | sicim | Özel özelliğin anahtarı |
custom_attributes.value | sicim | Özel özelliğin değeri |
etkinlik tipi | sicim | Olayın türü; olası değerler:
|
etkinlik adı | sicim | etkinliğin adı
|
ebeveyn_izleme_adı | 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 | şamandıra64 | Bu ekran izinin yavaş kare oranı, 0 ile 1 arasındadır (örneğin, 0,05 değeri, bu ekran örneği için karelerin %5'inin işlenmesinin 16 ms'den uzun sürdüğü anlamına gelir) |
trace_info.screen_info.frozen_frame_ratio | şamandıra64 | Bu ekran izi için donmuş karelerin oranı, 0 ile 1 arasındadır (örneğin, 0,05 değeri, bu ekran örneği için karelerin %5'inin işlenmesinin 700ms'den uzun 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ı için 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 sonrasındaki mikrosaniyelerBirim: mikrosaniye |
network_info.response_initiated_time_us | int64 | Ağ yanıtı başlatıldığında event_timestamp sonrasındaki mikrosaniyelerBirim: mikrosaniye |
network_info.response_completed_time_us | int64 | Ağ yanıtı tamamlandığında event_timestamp sonrasındaki mikrosaniyelerBirim: mikrosaniye |
Dışa aktarılan verilerle ne yapabilirsiniz?
Aşağıdaki bölümlerde, dışa aktarılan Performance Monitoring verilerinize karşı BigQuery'de ç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ş çerçevelerin oranını çeşitli koşullara göre kontrol edin
Örneğin, farklı radyo türlerinde (WiFi, 4G vb.) kullanıcıların uygulamanızın her bir ekranında geçirdikleri sürenin yanı sıra donmuş karelerin oranını da 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;
Belirli dosya türlerini diskten yüklemek için önbellek isabet oranını hesaplayın
Bu analiz file-extension
adlı özel bir öznitelik ve önbellek isabeti durumunda 1
ve önbellek isabetsizse 0
olarak ayarlanan cache-hit
adlı özel bir ölçü (bir TRACE_METRIC
) ile diskten yüklemek için özel bir kod izleme aracı kullandığı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, Amerika Birleşik Devletleri'ndeki kullanıcıların günün hangi saatinde uygulamanızdan ağ istekleri gönderdiğini 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 Performance Monitoring verilerinize sunucu tarafında erişmek veya onu başka bir üçüncü taraf çözümüne aktarmak isteyebilirsiniz. Verileri dışa aktarmak için şu anda 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 ayıklama işi gönderme.
Fiyatlandırma
Performance Monitoring'den dışa aktarılan veriler için herhangi bir ücret alınmaz ve BigQuery, cömert ve ücretsiz kullanım limitleri sağlar. Ayrıntılı bilgi için BigQuery fiyatlandırmasına veya BigQuery korumalı alanına bakın.