BigQuery ile günlükleri analiz edin

BigQuery, analiz yapmak için güçlü bir araçtır. Bu aracı, daha uzun süreli günlükleri depolamak ve veriler üzerinde SQL benzeri sorgular gerçekleştirmek için kullanabilirsiniz. Analiz için BigQuery'yi kullanmak istiyorsanız günlüklerinizi açıkça BigQuery'ye yönlendirmeniz gerekir. Bu işlem, sonraki bölümde açıklanmıştır.

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 Havuz Oluştur'u seçin.
  3. Bir havuz adı belirtin (örneğin, FleetEngineLogsSink). Next'i (Sonraki) tıklayın.
  4. Sink Destination (Alıcı Hedefi) bölümünde BigQuery dataset'i (BigQuery veri kümesi) seçin.
  5. BigQuery veri kümesi seçin bölümünde Yeni BigQuery veri kümesi oluştur'u seçin.
  6. Create dataset (Veri kümesi oluştur) iletişim kutusunda bir Dataset ID (Veri kümesi kimliği) girin.
  7. Diğer her şeyi olduğu gibi bırakıp Create dataset'i (Veri kümesi oluştur) tıklayın.
  8. Bölümlendirilmiş tabloları kullan'ı işaretleyin. Next'i (Sonraki) tıklayın.
  9. Choose logs to include in sink (Alıcıya dahil edilecek günlükleri seçin) ve Choose logs to filter out of sink (Alıcıdan filtrelenecek 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 kısa bir süre alabilir. Günlükleri desteklenen hedeflere yönlendirme başlıklı makaleyi de inceleyin.

Günlük verilerini BigQuery'ye yönlendirdikten sonra, FleetEngineLogs veri kümesindeki birkaç tablo otomatik olarak doldurulur. Her günlük türü için bir tablo oluşturulur:

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

Tablo adları aşağıdaki kalıbı kullanır:

project_id.data_set.log_name

Örneğin, projenin adı test-project ve veri kümesinin 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 sorgular, BigQuery'de farklı günlük girişlerini nasıl arayabileceğinizi gösterir.

Saate göre gruplandırılmış CreateTrips günlüklerinin 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 durak, 12. saatte 7 durak tamamladı.
  • C aracı 13. saatte 12 durak, 14. saatte 9 durak tamamladı.

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

BigQuery'yi Looker Studio ile entegre etme

BigQuery, iş analitiği için kontrol panelleri oluşturmak üzere iş zekası araçlarıyla entegre edilebilir. Looker Studio'ya bakın.

Aşağıdaki örnekte, gezileri ve araç hareketlerini harita üzerinde görselleştirmek için Looker Studio kontrol panelinin nasıl 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ılacağı Cloud projesini manuel olarak girin veya seçin.
  3. Sorgu kutusuna aşağıdaki sorgulardan birini girin.

İsteğe bağlı geziler ö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`

Programlanmış 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. Chart Type as Bubble Map'i (Baloncuk Haritası olarak Grafik Türü) ve ardından location (konum) alanını seçin.
  2. Alan ekle'yi seçin.
  3. Alanı adlandırın ve şu formülü ekleyin: CONCAT(lat, ",", lng).
  4. Türü Coğrafi->Enlem, Boylam olarak ayarlayın.
  5. Verileri filtrelemek için kontrol paneline kontroller 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 gezi 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 saklamayı kısıtlama başlıklı makaleyi inceleyin.