ロギングを有効にしたら、ログのルーティング、保存、保持方法を設定する必要があります。無料の使用量と保持の上限を超えると、ログの取り込みと保持に対して追加の 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
ロギング バケットを更新して、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"'
制限付き使用ログが空の場合にフィルタする
有効にすると、制限付き使用ログは、オペレーションで制限付きフィールドが入力されない場合でも、すべての通常のログの子ログを作成します。これらの空の制限付きログをフィルタで除外すると、コストを削減できます。
次のコマンドは、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 ログバケットに転送されます。
次のコマンドは、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"'
Cloud Logging の費用を予算内で管理するための 4 つのステップもご覧ください。