Menganalisis log dengan BigQuery

BigQuery adalah alat yang canggih untuk melakukan analisis. Anda dapat menggunakannya untuk menyimpan log jangka panjang dan menjalankan kueri seperti SQL terhadap data. Agar dapat menggunakan BigQuery untuk analisis, Anda harus merutekan log Anda secara eksplisit ke BigQuery, seperti yang 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 menu Tindakan atau Tindakan Lainnya, lalu pilih Buat Sink.
  3. Tentukan nama sink (misalnya, FleetEngineLogsSink). Klik Next.
  4. Di Sink Destination, pilih BigQuery dataset.
  5. Di bagian Pilih set data BigQuery, pilih Buat set data BigQuery baru.
  6. Pada dialog Create dataset, masukkan Dataset ID.
  7. Biarkan semua setelan lainnya seperti semula, lalu klik Create dataset.
  8. Centang Gunakan tabel berpartisi. Klik Next.
  9. Biarkan Choose logs to include in sink dan Choose logs to filter out of sink seperti apa adanya.
  10. Klik Create Sink.

Log Anda kini akan mulai mengisi set data BigQuery, yang mungkin memerlukan waktu sejenak. Lihat juga Merutekan log ke tujuan yang didukung.

Setelah Anda mengarahkan data log ke BigQuery, beberapa tabel dalam set data FleetEngineLogs akan otomatis terisi, satu tabel 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 datanya adalah FleetEngineLogs, tabel CreateTrip akan 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 berdasarkan 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 pada jam 11 dan 7 perhentian pada jam 12.
  • Kendaraan C menyelesaikan 12 perhentian pada jam ke-13 dan 9 perhentian pada jam ke-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 analisis bisnis. Lihat Looker Studio.

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

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

Kueri contoh 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`

Contoh kueri 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 daftar drop-down tambahan untuk vehicle_id. Dengan kontrol ini, Anda dapat memvisualisasikan gerakan kendaraan atau gerakan dalam perjalanan.

Contoh output Looker Studio:

Contoh output Looker Studio

Langkah berikutnya

Untuk mematuhi kebijakan retensi data, lihat Membatasi retensi log.