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

ロギングを有効にしたら、ログのルーティング、保存、保持の方法を設定する必要があります。無料枠の使用量と保持期間の上限を超えると、ログの取り込みと保持に追加の 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"'

デバッグ属性を作成する

属性を設定すると、ログを特定の車両に限定できます。debugdebug 属性のない車両は除外されます。

次のコマンドは、_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 ログバケットにルーティングされます。

次のコマンドは、_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"'

Cloud Logging の費用を予算内で管理するための 4 つのステップ もご覧ください