BigQuery to zaawansowane narzędzie do przeprowadzania analiz. Możesz ich używać do przechowywania długoterminowe logi i wykonywanie na nich zapytań podobnych do SQL. Aby użyć funkcji BigQuery do analizy, musisz jawnie kierować swoje logi do BigQuery zgodnie opisane w następnej sekcji.
Kieruj logi do BigQuery
- W Eksploratorze logów utwórz filtr, który:
izoluje logi Fleet Engine:
Fleetengine.googleapis.com/Fleet
. - W panelu Wyniki zapytania kliknij Działania lub Więcej działań i wybierz Utwórz ujście.
- Podaj nazwę ujścia (na przykład FleetEngineLogsSink). Kliknij Dalej.
- W sekcji Miejsce docelowe ujścia wybierz Zbiór danych BigQuery.
- W sekcji Wybierz zbiór danych BigQuery kliknij Utwórz nowy zbiór danych BigQuery.
- W oknie Tworzenie zbioru danych wpisz identyfikator zbioru danych.
- Pozostaw wszystkie pozostałe ustawienia bez zmian i kliknij Utwórz zbiór danych.
- Zaznacz Użyj tabel partycjonowanych. Kliknij Dalej.
- Pozostaw Wybierz logi do uwzględnienia w ujścia i Wybierz logi, które mają być odfiltrowywane do zlewu.
- Kliknij Utwórz ujście.
Logi powinny teraz zacząć zapełniać zbiór danych BigQuery, który może zająć za chwilę. Zapoznaj się też z artykułem Kierowanie dzienników do obsługiwanych miejsc docelowych.
Po skierowaniu danych dziennika do BigQuery pojawi się kilka tabel w sekcji Zbiór danych FleetEngineLogs jest wypełniany automatycznie, po jednym dla każdego typu logu:
- CreateVehicle
- GetVehicle
- ListVehicles
- SearchVehicles
- UpdateVehicle
- CreateTrip
- GetTrip
- UpdateTrip
- ListTrips
Nazwy tabel mają następujący wzorzec:
project_id.data_set.log_name
Jeśli na przykład projekt nazywa się projekt-testowy, a nazwa zbioru danych to
FleetEngineLogs, tabela CreateTrip
ma taką nazwę:
test-project.FleetEngineLogs.fleetengine_googleapis_com_create_trip
Przykładowe zapytania dotyczące BigQuery
Poniższe przykładowe zapytania pokazują, jak wyszukać różne wpisy logu w BigQuery.
Liczba logów CreateTrips pogrupowanych według godziny
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
Liczba przesiadek na pojazd na godzinę
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
To zapytanie może na przykład pokazać, że w ciągu ostatniej godziny:
- Pojazd A pokonał 10 przesiadek w godziny 12 i 8 przesiadkach w godziny 13.
- Pojazd B zatrzymał się 5 przesiadek w godziny 11 i 7 przesiadkach w godzinie 12.
- Pojazd C ma 12 przesiadek w godziny 13 i 9 przesiadek w godzinie 14.
Zobacz też Wyświetlanie logów kierowanych do BigQuery.
Integracja BigQuery z Looker Studio
BigQuery można zintegrować z narzędziami do analityki biznesowej, aby tworzyć panele do analityki biznesowej. Zobacz Looker Studio.
Z przykładu poniżej dowiesz się, jak utworzyć panel Looker Studio wizualizowanie podróży i ruchu pojazdów na mapie.
- Uruchom nowy panel Looker Studio i wybierz BigQuery jako połączenie danych.
- Wybierz Zapytanie niestandardowe i wpisz lub wybierz projekt Cloud, aby który ma być obciążany.
- Wpisz w polu zapytania jedno z tych zapytań.
Przykładowe zapytanie dotyczące podróży na żądanie
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`
Przykładowe zapytanie dotyczące zaplanowanych zadań
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`
- Wybierz Typ wykresu jako mapa bąbelkowa, a następnie wybierz pole lokalizacja.
- Wybierz Dodaj pole.
- Nazwij to pole i dodaj tę formułę:
CONCAT(lat, ",", lng)
. - Ustaw typ na Geo->szerokość geograficzna, długość geograficzna.
- Do panelu możesz dodać elementy sterujące, aby filtrować dane. Na przykład wybierz filtr Zakres dat.
- Aby wybrać domyślny zakres dat, edytuj pole zakresu dat.
- Możesz dodać więcej opcji listy dla
vehicle_id
. Na możesz wizualizować ruch pojazdu lub ruch w trakcie podróży.
Przykładowe dane wyjściowe narzędzia Looker Studio:
Co dalej?
Aby zachować zgodność z zasadami przechowywania danych, zapoznaj się z sekcją Ograniczanie dziennika i ich przechowywaniu.