BigQuery দিয়ে লগ বিশ্লেষণ করুন

BigQuery হল অ্যানালিটিক্স করার জন্য একটি শক্তিশালী টুল। আপনি এটিকে দীর্ঘমেয়াদী লগ সংরক্ষণ করতে এবং ডেটার বিরুদ্ধে SQL-এর মতো প্রশ্নগুলি সম্পাদন করতে ব্যবহার করতে পারেন। বিশ্লেষণের জন্য BigQuery ব্যবহার করতে, আপনাকে অবশ্যই আপনার লগগুলিকে BigQuery-এ রুট করতে হবে, যেমনটি পরবর্তী বিভাগে বর্ণনা করা হয়েছে।

BigQuery এ রুট লগ করুন

  1. লগ এক্সপ্লোরারে , একটি ফিল্টার তৈরি করুন যা ফ্লিট ইঞ্জিন লগগুলিকে বিচ্ছিন্ন করে: Fleetengine.googleapis.com/Fleet
  2. কোয়েরি ফলাফল ফলকে, অ্যাকশন বা আরও অ্যাকশন মেনুতে ক্লিক করুন এবং সিঙ্ক তৈরি করুন বেছে নিন।
  3. একটি সিঙ্কের নাম উল্লেখ করুন (উদাহরণস্বরূপ, FleetEngineLogsSink )। পরবর্তী ক্লিক করুন.
  4. সিঙ্ক গন্তব্যে , BigQuery ডেটাসেট নির্বাচন করুন।
  5. BigQuery ডেটাসেট নির্বাচন করুন , নতুন BigQuery ডেটাসেট তৈরি করুন নির্বাচন করুন।
  6. ডেটাসেট তৈরি করুন ডায়ালগে, একটি ডেটাসেট আইডি লিখুন।
  7. অন্য সব কিছু যেমন আছে তেমন ছেড়ে দিন এবং ডেটাসেট তৈরি করুন ক্লিক করুন।
  8. পার্টিশন করা টেবিল ব্যবহার করুন চেক করুন। পরবর্তী ক্লিক করুন.
  9. সিঙ্কে অন্তর্ভুক্ত করার জন্য লগগুলি বেছে নিন এবং সিঙ্ক থেকে ফিল্টার করার জন্য লগগুলি বেছে নিন
  10. সিঙ্ক তৈরি করুন ক্লিক করুন।

আপনার লগগুলি এখন BigQuery ডেটাসেট তৈরি করতে শুরু করবে, এতে অল্প সময় লাগতে পারে। সমর্থিত গন্তব্যের রুট লগগুলিও দেখুন৷

একবার আপনি BigQuery-এ লগ ডেটা রাউটিং করলে, FleetEngineLogs ডেটাসেটের অধীনে বেশ কয়েকটি টেবিল স্বয়ংক্রিয়ভাবে পপুলেট হয়ে যায়, প্রতিটি লগ টাইপের জন্য একটি:

  • যানবাহন তৈরি করুন
  • যানবাহন
  • তালিকা যানবাহন
  • যানবাহন অনুসন্ধান করুন
  • আপডেট যানবাহন
  • CreateTrip
  • GetTrip
  • আপডেট ট্রিপ
  • লিস্টট্রিপস

টেবিলের নাম নিম্নলিখিত প্যাটার্ন ব্যবহার করে:

project_id.data_set.log_name

উদাহরণস্বরূপ, যদি প্রকল্পটিকে পরীক্ষা-প্রকল্প বলা হয় এবং ডেটাসেটের নাম হয় 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 ঘন্টায় 5টি স্টপ এবং 12 ঘন্টায় 7টি স্টপ সম্পন্ন করেছে৷
  • যানবাহন সি 13 ঘন্টায় 12টি স্টপ এবং 14 ঘন্টায় 9টি স্টপ সম্পন্ন করেছে৷

BigQuery-এ রাউট করা লগগুলি দেখুন

Looker Studio এর সাথে BigQuery ইন্টিগ্রেট করুন

বিজনেস অ্যানালিটিক্সের জন্য ড্যাশবোর্ড তৈরি করতে BigQuery-কে বিজনেস ইন্টেলিজেন্স টুলের সাথে একীভূত করা যেতে পারে। লুকার স্টুডিও দেখুন।

নিচের উদাহরণটি দেখায় যে কিভাবে একটি মানচিত্রে ট্রিপ এবং গাড়ির গতিবিধি ভিজ্যুয়ালাইজ করার জন্য একটি লুকার স্টুডিও ড্যাশবোর্ড তৈরি করতে হয়।

  1. একটি নতুন লুকার স্টুডিও ড্যাশবোর্ড চালু করুন এবং ডেটা সংযোগ হিসাবে BigQuery নির্বাচন করুন৷
  2. কাস্টম ক্যোয়ারী নির্বাচন করুন এবং ম্যানুয়ালি প্রবেশ করুন বা ক্লাউড প্রকল্প নির্বাচন করুন যেখানে এটি বিল করা উচিত।
  3. ক্যোয়ারী বক্সে নিম্নলিখিত প্রশ্নগুলির মধ্যে একটি লিখুন৷

অন-ডিমান্ড ট্রিপ উদাহরণ কোয়েরি

    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`
  1. বাবল ম্যাপ হিসাবে চার্টের প্রকার নির্বাচন করুন এবং তারপরে অবস্থান ক্ষেত্রটি নির্বাচন করুন।
  2. একটি ক্ষেত্র যোগ করুন নির্বাচন করুন।
  3. ক্ষেত্রের নাম দিন এবং নিম্নলিখিত সূত্র যোগ করুন: CONCAT(lat, ",", lng)
  4. ধরনটি Geo->অক্ষাংশ, দ্রাঘিমাংশে সেট করুন।
  5. ডেটা ফিল্টার করতে আপনি ড্যাশবোর্ডে নিয়ন্ত্রণ যোগ করতে পারেন। উদাহরণস্বরূপ, তারিখ-পরিসীমা ফিল্টার নির্বাচন করুন।
  6. একটি ডিফল্ট তারিখ ব্যাপ্তি নির্বাচন করতে তারিখ পরিসর বক্স সম্পাদনা করুন.
  7. আপনি vehicle_id এর জন্য অতিরিক্ত ড্রপ-ডাউন তালিকা নিয়ন্ত্রণ যোগ করতে পারেন। এই কন্ট্রোলগুলির সাহায্যে, আপনি গাড়ির গতিবিধি বা ট্রিপের মধ্যে চলাফেরা করতে পারেন।

লুকার স্টুডিও উদাহরণ আউটপুট:

লুকার স্টুডিও উদাহরণ আউটপুট

এরপর কি

ডেটা ধারণ নীতি মেনে চলতে, লগ ধারণ সীমাবদ্ধ দেখুন।