डेटा लॉग में रखने की लागत कम करें

लॉगिंग की सुविधा चालू होने के बाद, यह तय करने की ज़िम्मेदारी आपकी होती है कि आपको अपने लॉग को कैसे रूट, सेव, और बनाए रखना है. अगर बिना किसी शुल्क के इस्तेमाल और डेटा बनाए रखने की सीमाएं पार हो जाती हैं, तो आपको लॉग इन करने और डेटा बनाए रखने के लिए, Google Cloud का अतिरिक्त शुल्क देना पड़ सकता है. Google Cloud Observability की कीमत देखें.

हालांकि, नीचे दिए गए सेक्शन में बताए गए तरीकों में से किसी एक का इस्तेमाल करके, लॉगिंग की लागत को कंट्रोल किया जा सकता है.

लॉगिंग की सुविधा का इस्तेमाल कम करना

कुछ लॉग एंट्री को बाहर रखकर, लॉग डेटा की उस मात्रा को सीमित किया जा सकता है जिसे इकट्ठा किया जाता है. ज़्यादा जानकारी के लिए, लॉग को बाहर रखना लेख पढ़ें.

यहां दिए गए उदाहरणों में, Fleet Engine के सामान्य परिदृश्यों के बारे में बताया गया है. साथ ही, लागत कम करने के लिए, खास लॉग मैसेज को फ़िल्टर करने का तरीका बताया गया है.

तरीके के हिसाब से फ़िल्टर करें

रीड-ओनली तरीकों को फ़िल्टर किया जा सकता है, क्योंकि आम तौर पर डेटा विश्लेषण या समस्या हल करने के लिए इनकी ज़रूरत नहीं होती.

नीचे दी गई कमांड, _Default लॉगिंग बकेट को अपडेट करके GetVehicle लॉग को बाहर रखती है.

gcloud logging sinks update _Default \
--add-exclusion=name=ExcludeFleetengineGetVehicle,\
filter='jsonPayload.@type:"type.googleapis.com/maps.fleetengine.v1.GetVehicleLog"'

नीचे दी गई कमांड, _Default लॉगिंग बकेट को अपडेट करके GetTrip लॉग को बाहर रखती है.

gcloud logging sinks update _Default \
--add-exclusion=name=ExcludeFleetengineGetTrip,filter=\
'jsonPayload.@type:"type.googleapis.com/maps.fleetengine.v1.GetTripLog"'

डीबग एट्रिब्यूट बनाना

debug एट्रिब्यूट सेट करके ही, कुछ वाहनों के लिए लॉग कम किए जा सकते हैं. अब ऐसे किसी भी वाहन को शामिल नहीं किया जाएगा जिसमें debug एट्रिब्यूट की वैल्यू मौजूद नहीं है.

नीचे दी गई कमांड, _Default लॉगिंग बकेट को अपडेट करती है. इससे, UpdateVehicle लॉग में उन वाहनों को शामिल नहीं किया जाता जिनमें debug एट्रिब्यूट की वैल्यू मौजूद नहीं है.

gcloud logging sinks update _Default \
--add-exclusion=name=ExcludeFleetengineNonDebug,\
filter='resource.type="fleetengine.googleapis.com/Fleet"
log_name:"logs/fleetengine.googleapis.com%2Fupdate_vehicle"
jsonPayload.@type="type.googleapis.com/maps.fleetengine.v1.UpdateVehicleLog"
NOT jsonPayload.response.attributes.key="debug"'

पाबंदी के साथ इस्तेमाल किए जाने वाले खाली लॉग फ़िल्टर करना

इस सुविधा के चालू होने पर, पाबंदी के साथ इस्तेमाल किए गए लॉग, हर सामान्य लॉग के लिए चाइल्ड लॉग बनाते हैं. भले ही, ऑपरेशन में पाबंदी वाले फ़ील्ड न भरे गए हों. पाबंदी वाले इन खाली लॉग को फ़िल्टर करने से, लागत कम हो सकती है.

नीचे दी गई कमांड, RestrictedLogs लॉगिंग बकेट को अपडेट करती है, ताकि पाबंदी वाले खाली UpdateVehicle लॉग शामिल न किए जाएं.

gcloud logging sinks update RestrictedLogs \
--add-exclusion=name=ExcludeFleetengineEmptyRestrictedVehicleLogs,\
filter='resource.type="fleetengine.googleapis.com/Fleet"
log_name:"logs/fleetengine.googleapis.com%2Fupdate_vehicle_restricted"
NOT jsonPayload.request.vehicle.currentRouteSegment:*
NOT jsonPayload.response.currentRouteSegment:*
NOT jsonPayload.response.waypoints:*'

लॉग एक्सपोर्ट या रूट करना

डिफ़ॉल्ट रूप से लॉग इकट्ठा करने और उन्हें सेव करने के शुल्क से बचने के लिए, लॉग को Google Cloud या बाहरी डेस्टिनेशन पर रूट किया जा सकता है. डेटा ट्रांसफ़र करने का शुल्क न लगे, इसके लिए पक्का करें कि आपने अगले सेक्शन में बताए गए तरीके से, लॉग इन करने की सुविधा बंद कर दी हो.

Cloud Logging एक्सपोर्ट और लॉग एक्सपोर्ट करना लेख पढ़ें.

लॉग इन करने की सुविधा बंद करना

अगर आपको Fleet Engine के लॉग इस्तेमाल नहीं करने हैं, तो डेटा इकट्ठा करने की सुविधा बंद करके, Cloud Logging के संभावित शुल्क से बचा जा सकता है. डिफ़ॉल्ट रूप से, Fleet Engine के लॉग _Default लॉग बकेट में भेजे जाते हैं.

नीचे दी गई कमांड, _Default लॉगिंग बकेट को अपडेट करती है, ताकि वह Fleet Engine के लॉग को शामिल न करे.

    gcloud logging sinks update _Default \
    --log-filter='NOT LOG_ID("cloudaudit.googleapis.com/activity")
    AND NOT LOG_ID("externalaudit.googleapis.com/activity")
    AND NOT LOG_ID("cloudaudit.googleapis.com/system_event")
    AND NOT LOG_ID("externalaudit.googleapis.com/system_event")
    AND NOT LOG_ID("cloudaudit.googleapis.com/access_transparency")
    AND NOT LOG_ID("externalaudit.googleapis.com/access_transparency")
    AND NOT resource.type:"fleetengine.googleapis.com"'

बजट के हिसाब से Cloud Logging की लागत मैनेज करने के चार तरीके भी देखें.