ロギングの費用を削減する

ロギングを有効にしたら、ログのルーティング、保存、保持方法を設定する必要があります。無料の使用量と保持の上限を超えると、ログの取り込みと保持に対して追加の 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 つのステップもご覧ください。