विश्लेषण करने के लिए BigQuery एक बेहतरीन टूल है. इसका इस्तेमाल, स्टोर करने के लिए किया जा सकता है लंबी अवधि के लॉग और डेटा के लिए SQL जैसी क्वेरी करने के लिए डिज़ाइन किया गया है. इस्तेमाल करने के लिए BigQuery का विश्लेषण करने के लिए, आपको अपने लॉग को साफ़ तौर पर BigQuery में रूट करना होगा, जैसे कि अगले सेक्शन में बताया गया है.
BigQuery पर लॉग रूट करें
- लॉग एक्सप्लोरर में जाकर, ऐसा फ़िल्टर बनाएं जो
फ़्लीट इंजन के लॉग को अलग करता है:
Fleetengine.googleapis.com/Fleet
. - क्वेरी के नतीजे वाले पैनल में, कार्रवाइयां या ज़्यादा कार्रवाइयां पर क्लिक करें मेन्यू में जाकर सिंक बनाएं चुनें.
- सिंक को कोई नाम दें (उदाहरण के लिए, FleetEngineLogsSink). आगे बढ़ें पर क्लिक करें.
- सिंक डेस्टिनेशन में, BigQuery डेटासेट चुनें.
- BigQuery डेटासेट चुनें में, नया BigQuery डेटासेट बनाएं चुनें.
- डेटासेट बनाएं डायलॉग में, डेटासेट आईडी डालें.
- बाकी सब कुछ वैसे ही रहने दें और डेटासेट बनाएं पर क्लिक करें.
- सेगमेंट में बांटी गई टेबल इस्तेमाल करें को चुनें. आगे बढ़ें पर क्लिक करें.
- सिंक में शामिल करने के लिए लॉग चुनें छोड़ें और फ़िल्टर करने के लिए लॉग चुनें सिंक करता है.
- सिंक बनाएं पर क्लिक करें.
अब आपके लॉग, BigQuery डेटासेट को पॉप्युलेट करना शुरू कर देंगे. इसमें कुछ समय तक. इस्तेमाल किए जा सकने वाले डेस्टिनेशन पर रूट लॉग भी देखें.
लॉग डेटा को BigQuery में रूट करने के बाद, FleetEngineLogs डेटासेट अपने-आप भर जाता है, जो हर लॉग टाइप के लिए एक होता है:
- CreateVehicle
- GetVehicle
- ListVehicles
- SearchVehicles
- UpdateVehicle
- CreateTrip
- GetTrip
- UpdateTrip
- ListTrips
टेबल के नाम इन पैटर्न का इस्तेमाल करते हैं:
project_id.data_set.log_name
उदाहरण के लिए, अगर प्रोजेक्ट को test-project कहा जाता है और डेटासेट का नाम
FleetEngineLogs, CreateTrip
टेबल का नाम नीचे दिया गया है:
test-project.FleetEngineLogs.fleetengine_googleapis_com_create_trip
BigQuery के लिए क्वेरी के उदाहरण
नीचे दी गई, क्वेरी के उदाहरण से पता चलता है कि अलग-अलग लॉग एंट्री को कैसे खोजा जा सकता है BigQuery में.
CreateTrips लॉग की संख्या, जिसे घंटे के हिसाब से ग्रुप किया गया है
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
हर वाहन के लिए एक घंटे में स्टॉप की संख्या
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
उदाहरण के लिए, इस क्वेरी से आपको पता चल सकता है कि पिछले एक घंटे में:
- वाहन A ने 12 घंटे में 10 स्टॉप और 13 घंटे में 8 स्टॉप पूरे किए.
- वाहन B ने 11 घंटे में पांच स्टॉप और 12 घंटे में 7 स्टॉप पूरे किए हैं.
- वाहन C ने 13वें घंटे में 12 स्टॉप और 14वें घंटे में 9 स्टॉप पूरे किए.
BigQuery पर रूट किए गए लॉग देखना भी देखें.
BigQuery को Looker Studio के साथ इंटिग्रेट करना
डैशबोर्ड बनाने के लिए, BigQuery को बिज़नेस इंटेलिजेंस टूल के साथ इंटिग्रेट किया जा सकता है की मदद से कमाई की जा सकती है. Looker Studio देखें.
यहां दिए गए उदाहरण में, Looker Studio के डैशबोर्ड को मैप पर यात्राओं और वाहन की गतिविधियों को विज़ुअलाइज़ करना.
- Looker Studio का नया डैशबोर्ड लॉन्च करें और चुनें BigQuery का इस्तेमाल डेटा कनेक्शन के तौर पर करें.
- कस्टम क्वेरी चुनें और मैन्युअल तरीके से Cloud प्रोजेक्ट चुनें या डालें बिल किया जाना चाहिए.
- क्वेरी बॉक्स में इनमें से कोई एक क्वेरी डालें.
मांग पर यात्राओं के उदाहरण से जुड़ी क्वेरी
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`
शेड्यूल किए गए टास्क का उदाहरण
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`
- बबल मैप के तौर पर चार्ट टाइप चुनें. इसके बाद, जगह फ़ील्ड चुनें.
- फ़ील्ड जोड़ें को चुनें.
- फ़ील्ड को नाम दें और यह फ़ॉर्मूला जोड़ें:
CONCAT(lat, ",", lng)
. - टाइप को भौगोलिक->अक्षांश, देशांतर पर सेट करें.
- डेटा फ़िल्टर करने के लिए, डैशबोर्ड में कंट्रोल जोड़े जा सकते हैं. उदाहरण के लिए, तारीख की सीमा फ़िल्टर चुनें.
- तारीख की डिफ़ॉल्ट सीमा चुनने के लिए, तारीख की सीमा वाले बॉक्स में बदलाव करें.
vehicle_id
के लिए, अतिरिक्त ड्रॉप-डाउन सूची कंट्रोल जोड़े जा सकते हैं. इन कंट्रोल की मदद से, वाहन की गति या किसी यात्रा के दौरान की गई गति को विज़ुअलाइज़ किया जा सकता है.
Looker Studio का उदाहरण आउटपुट:
आगे क्या करना है
डेटा के रखरखाव की नीतियों का पालन करने के लिए, लॉग पर पाबंदी लगाएं बनाए रखना.