लॉगिंग सक्षम होने के बाद, आप यह निर्धारित करने के लिए जिम्मेदार हैं कि आप अपने लॉग को कैसे रूट, स्टोर और बनाए रखना चाहते हैं. यदि आप बिना किसी शुल्क के उपयोग और अवधारण सीमा को पार कर जाते हैं, तो आपको लॉग अंतर्ग्रहण और अवधारण के लिए अतिरिक्त Google क्लाउड लागत का भुगतान करना पड़ सकता है. Google Cloud की जांचने की क्षमता की कीमत देखें.
हालाँकि, आप निम्नलिखित अनुभागों में वर्णित किसी भी दृष्टिकोण का उपयोग करके लॉगिंग लागत को नियंत्रित कर सकते हैं.
लॉगिंग उपयोग कम करें
आप कुछ लॉग प्रविष्टियों को बाहर करके अंतर्ग्रहण किए जाने वाले लॉग डेटा की मात्रा को सीमित कर सकते हैं. अधिक जानकारी के लिए लॉग बहिष्कृत करना देखें.
निम्नलिखित उदाहरण सामान्य फ्लीट इंजन परिदृश्यों को प्रदर्शित करते हैं तथा लागत कम करने के लिए विशिष्ट लॉग संदेशों को फ़िल्टर करने का तरीका बताते हैं.
विधि के अनुसार फ़िल्टर करें
आप केवल-पठन विधियों को फ़िल्टर कर सकते हैं क्योंकि आमतौर पर डेटा विश्लेषण या समस्या निवारण के लिए इनकी आवश्यकता नहीं होती है.
नीचे दी गई कमांड, _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"'
इस्तेमाल पर पाबंदी वाले खाली लॉग फ़िल्टर करना
इस सुविधा के चालू होने पर, प्रतिबंधित इस्तेमाल के लॉग, हर सामान्य लॉग के लिए चाइल्ड लॉग बनाते हैं. भले ही, ऑपरेशन प्रतिबंधित फ़ील्ड में डेटा न भरता हो. पाबंदी वाले इन खाली लॉग को फ़िल्टर करने से लागत कम हो सकती है.
निम्न आदेश रिक्त प्रतिबंधित UpdateVehicle लॉग को बाहर करने के लिए RestrictedLogs लॉगिंग बकेट को अद्यतन करता है.
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"'
अपने क्लाउड लॉगिंग लागतों को बजट में प्रबंधित करने के चार चरण भी देखें.