降低 Logging 費用

啟用記錄功能後,您必須設定記錄的轉送、儲存和保留方式。如果超出免付費的用量和保留期限,您可能需要支付額外的 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 記錄 bucket,使其不會擷取 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 費用