BigQuery ile günlükleri analiz edin

BigQuery, analiz yapmak için güçlü bir araçtır. Daha uzun süreli günlükleri depolamak ve verilere SQL benzeri sorgular uygulamak için bu özelliği kullanabilirsiniz. Analiz için BigQuery'yi kullanmak istiyorsanız günlüklerinizi bir sonraki bölümde açıklandığı gibi BigQuery'ye yönlendirmeniz gerekir.

Günlükleri BigQuery'ye yönlendirme

  1. Günlük Gezgini'nde Fleet Engine günlüklerini ayıran bir filtre oluşturun: Fleetengine.googleapis.com/Fleet.
  2. Sorgu Sonuçları bölmesinde İşlemler veya Diğer İşlemler menüsünü tıklayın ve Yokuş Oluştur'u seçin.
  3. Bir akış adı belirtin (örneğin, FleetEngineLogsSink). Sonraki'yi tıklayın.
  4. Hedef Aktarıcı bölümünde BigQuery veri kümesi'ni seçin.
  5. BigQuery veri kümesi seçin bölümünde Yeni BigQuery veri kümesi oluştur'u seçin.
  6. Veri kümesi oluştur iletişim kutusunda bir Veri kümesi kimliği girin.
  7. Diğer her şeyi olduğu gibi bırakıp Veri kümesi oluştur'u tıklayın.
  8. Bölümlendirilmiş tablolar kullan'ı işaretleyin. Sonraki'yi tıklayın.
  9. Havuza dahil edilecek günlükleri seçin ve Filtrelenip havuzdan çıkarılacak olan günlükleri seçin seçeneklerini olduğu gibi bırakın.
  10. Havuz Oluştur'u tıklayın.

Günlükleriniz artık BigQuery veri kümesini doldurmaya başlayacaktır. Bu işlem biraz zaman alabilir. Günlükleri desteklenen hedeflere yönlendirme başlıklı makaleyi de inceleyin.

Günlük verilerini BigQuery'ye yönlendirdiğinizde, FleetEngineLogs veri kümesi altında her günlük türü için bir tane olmak üzere çeşitli tablolar otomatik olarak doldurulur:

  • CreateVehicle
  • GetVehicle
  • ListVehicles
  • SearchVehicles
  • UpdateVehicle
  • CreateTrip
  • GetTrip
  • UpdateTrip
  • ListTrips

Tablo adlarında aşağıdaki kalıp kullanılır:

project_id.data_set.log_name

Örneğin, projenin adı test-project ve veri kümesi adı FleetEngineLogs ise CreateTrip tablosunun adı şu şekilde olur:

test-project.FleetEngineLogs.fleetengine_googleapis_com_create_trip

BigQuery için örnek sorgular

Aşağıdaki örnek sorgularda, BigQuery'de farklı günlük girişlerini nasıl arayacağınız gösterilmektedir.

CreateTrips günlüklerinin saate göre gruplandırılmış sayısı

    SELECT TIMESTAMP_TRUNC(timestamp, HOUR) as hour,
           count(*) as num_trips_created
    FROM
    `ProjectId.FleetEngineLogs.fleetengine_googleapis_com_create_trip`
    GROUP BY hour
    ORDER by hour

Araç başına saatlik durak sayısı

    SELECT
      jsonpayload_v1_updatevehiclelog.request.vehicleid AS vehicle,
      TIMESTAMP_TRUNC(timestamp, HOUR) AS hour,
      COUNT(*) AS num_stops
    FROM
      `ProjectId.FleetEngineLogs.fleetengine_googleapis_com_update__vehicle`
    WHERE
    ARRAY_LENGTH(jsonpayload_v1_updatevehiclelog.request.vehicle.remainingvehiclejourneysegments) > 0
    AND jsonpayload_v1_updatevehiclelog.request.vehicle.remainingvehiclejourneysegments[
    OFFSET
    (0)].stop.state = 'VEHICLE_STOP_STATE_LOG_ARRIVED'
    GROUP BY
    1,
    2
    ORDER BY
    2

Örneğin, bu sorgu size son bir saat içinde şunları söyleyebilir:

  • A aracı 12. saatte 10 durak, 13. saatte 8 durak tamamladı.
  • B aracı 11. saatte 5, 12. saatte 7 durak tamamladı.
  • C aracı 13. saatte 12 durak, 14. saatte 9 durak tamamladı.

Ayrıca BigQuery'ye yönlendirilen günlükleri görüntüleme başlıklı makaleyi inceleyin.

BigQuery'yi Looker Studio ile entegre etme

BigQuery, iş analizleri için kontrol panelleri oluşturmak amacıyla iş zekası araçlarıyla entegre edilebilir. Looker Studio'yu inceleyin.

Aşağıdaki örnekte, gezileri ve araç hareketlerini harita üzerinde görselleştirmek için nasıl Looker Studio kontrol paneli oluşturulacağı gösterilmektedir.

  1. Yeni bir Looker Studio kontrol paneli başlatın ve veri bağlantısı olarak BigQuery'yi seçin.
  2. Özel Sorgu'yu seçin ve faturalandırılacak Cloud projesini manuel olarak girin veya seçin.
  3. Sorgu kutusuna aşağıdaki sorgulardan birini girin.

İsteğe bağlı seyahatler örnek sorgusu

    SELECT
     timestamp,
     labels.vehicle_id,
    jsonpayload_v1_updatevehiclelog.response.lastlocation.location.latitude AS lat,
    jsonpayload_v1_updatevehiclelog.response.lastlocation.location.longitude AS lng
    FROM
    `ProjectId.TableName.fleetengine_googleapis_com_update_vehicle`

Planlanmış Görevler örnek sorgusu

    SELECT
    labels.delivery_vehicle_id,
    jsonpayload_v1_updatedeliveryvehiclelog.response.lastlocation.rawlocation.longitude as lat, jsonpayload_v1_updatedeliveryvehiclelog.response.lastlocation.rawlocation.latitude as lng
    FROM `ProjectID.TableName.fleetengine_googleapis_com_update_delivery_vehicle`
  1. Grafiği Kabarcık Haritası Olarak Göster'i ve ardından konum alanını seçin.
  2. Alan ekle'yi seçin.
  3. Alanı adlandırın ve aşağıdaki formülü ekleyin: CONCAT(lat, ",", lng).
  4. Türü Coğrafi->Enlem, Boylam olarak ayarlayın.
  5. Verileri filtrelemek için kontrol paneline kontrol düğmeleri ekleyebilirsiniz. Örneğin, Tarih aralığı filtresini seçin.
  6. Varsayılan bir tarih aralığı seçmek için tarih aralığı kutusunu düzenleyin.
  7. vehicle_id için ek açılır liste kontrolleri ekleyebilirsiniz. Bu kontrollerle aracın hareketini veya bir seyahat içindeki hareketi görselleştirebilirsiniz.

Looker Studio örnek çıkışı:

Looker Studio örnek çıkışı

Sırada ne var?

Veri saklama politikalarına uymak için Günlük saklama süresini kısıtlama başlıklı makaleyi inceleyin.