ロギングを有効にしたら、ログのルーティング、保存、保持方法を設定する必要があります。無料の使用量と保持の上限を超えると、ログの取り込みと保持に追加の Google Cloud 費用が発生する場合があります。Google Cloud Observability の料金をご覧ください。
ただし、以降のセクションで説明する次のいずれかの方法で、ロギング費用を制御できます。
ロギングの使用量を削減する
特定のログエントリを除外することで、取り込まれるログデータの量を制限できます。詳細については、ログの除外をご覧ください。
次の例は、Fleet Engine の一般的なシナリオと、特定のログ メッセージを除外して費用を削減する方法を示しています。
メソッドでフィルタする
通常、データ分析やトラブルシューティングでは読み取り専用メソッドは必要ないため、除外できます。
次のコマンドは、GetVehicle
ログを除外するように _Default
ロギング バケットを更新します。
gcloud logging sinks update _Default \
--add-exclusion=name=ExcludeFleetengineGetVehicle,\
filter='jsonPayload.@type:"type.googleapis.com/maps.fleetengine.v1.GetVehicleLog"'
次のコマンドは、GetTrip
ログを除外するように _Default
ロギング バケットを更新します。
gcloud logging sinks update _Default \
--add-exclusion=name=ExcludeFleetengineGetTrip,filter=\
'jsonPayload.@type:"type.googleapis.com/maps.fleetengine.v1.GetTripLog"'
デバッグ属性を作成する
ログを特定の車両に限定できるのは、debug
属性を設定する場合に限られます。debug
属性がない車両は除外されます。
次のコマンドは、_Default
ロギング バケットを更新して、debug
属性のない車両を UpdateVehicle
ログから除外します。
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 ログバケットに転送されます。
次のコマンドは、Fleet Engine ログを取り込まないように _Default ロギング バケットを更新します。
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"'