Menganalisis log dengan BigQuery

BigQuery adalah alat yang ampuh untuk melakukan analisis. Anda dapat menggunakannya untuk menyimpan log jangka panjang dan melakukan kueri seperti SQL terhadap data. Untuk menggunakan BigQuery untuk analisis, Anda harus secara eksplisit mengarahkan log ke BigQuery, yang akan dijelaskan di bagian berikutnya.

Merutekan log ke BigQuery

  1. Di Logs Explorer, buat filter yang mengisolasi log Fleet Engine: Fleetengine.googleapis.com/Fleet.
  2. Di panel Hasil Kueri, klik Tindakan atau Tindakan Lainnya lalu pilih Create Sink.
  3. Tentukan nama sink (misalnya, FleetEngineLogsSink). Klik Next.
  4. Di Sink Destination, pilih set data BigQuery.
  5. Di bagian Pilih set data BigQuery, pilih Buat set data BigQuery baru.
  6. Pada dialog Create dataset, masukkan Dataset ID.
  7. Biarkan yang lainnya seperti apa adanya dan klik Create dataset.
  8. Centang Gunakan tabel berpartisi. Klik Next.
  9. Biarkan Choose logs to include in sink dan Choose logs to filter out sink sebagaimana adanya.
  10. Klik Create Sink.

Log Anda sekarang seharusnya mulai mengisi {i>dataset<i} BigQuery, yang dapat memakan sementara waktu. Lihat juga Merutekan log ke tujuan yang didukung.

Setelah Anda mengarahkan data log ke BigQuery, beberapa tabel di bawah Set data FleetEngineLogs akan otomatis terisi, satu set data untuk setiap jenis log:

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

Nama tabel menggunakan pola berikut:

project_id.data_set.log_name

Misalnya, jika project bernama test-project dan nama set data adalah FleetEngineLogs, tabel CreateTrip memiliki nama berikut:

test-project.FleetEngineLogs.fleetengine_googleapis_com_create_trip

Contoh kueri untuk BigQuery

Contoh kueri berikut menunjukkan cara menelusuri berbagai entri log di BigQuery.

Jumlah log CreateTrips yang dikelompokkan menurut jam

    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

Jumlah perhentian per kendaraan per jam

    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

Misalnya, kueri ini dapat memberi tahu Anda bahwa dalam satu jam terakhir:

  • Kendaraan A selesai 10 perhentian dalam jam ke-12 dan 8 perhentian dalam jam ke-13.
  • Kendaraan B menyelesaikan 5 perhentian dalam jam 11 dan 7 perhentian di jam 12.
  • Kendaraan C menyelesaikan 12 perhentian di jam 13 dan 9 perhentian di jam 14.

Lihat juga Melihat log yang dirutekan ke BigQuery.

Mengintegrasikan BigQuery dengan Looker Studio

BigQuery dapat diintegrasikan dengan alat business intelligence untuk membuat dasbor untuk analitik bisnis. Lihat Looker Studio.

Contoh berikut menunjukkan cara membuat dasbor Looker Studio untuk memvisualisasikan perjalanan dan pergerakan kendaraan pada peta.

  1. Luncurkan dasbor Looker Studio baru dan pilih BigQuery sebagai koneksi data.
  2. Pilih Custom Query dan masukkan atau pilih Project Cloud secara manual untuk yang harus ditagih.
  3. Masukkan salah satu kueri berikut ke dalam kotak kueri.

Contoh kueri perjalanan on demand

    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`

Kueri contoh Tugas Terjadwal

    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. Pilih Jenis Diagram sebagai Peta Balon, lalu pilih kolom lokasi.
  2. Pilih Tambahkan Kolom.
  3. Beri nama kolom dan tambahkan formula berikut: CONCAT(lat, ",", lng).
  4. Tetapkan jenis ke Geo->Lintang, Bujur.
  5. Anda dapat menambahkan kontrol ke dasbor untuk memfilter data. Misalnya, pilih filter Rentang tanggal.
  6. Edit kotak rentang tanggal untuk memilih rentang tanggal default.
  7. Anda dapat menambahkan kontrol menu drop-down tambahan untuk vehicle_id. Dengan kontrol ini, Anda dapat memvisualisasikan gerakan kendaraan atau pergerakan dalam sebuah perjalanan.

Contoh output Looker Studio:

Contoh output Looker Studio

Langkah berikutnya

Untuk mematuhi kebijakan retensi data, lihat Membatasi log retensi.