로깅이 사용 설정되면 로그를 라우팅, 저장, 보관하는 방법을 설정해야 합니다. 무료 사용량 및 보관 한도를 초과하면 로그 수집 및 보관에 대한 추가 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
속성이 없는 차량은 제외됩니다.
다음 명령어는 debug
속성이 없는 차량을 UpdateVehicle
로그에서 제외하도록 _Default
로깅 버킷을 업데이트합니다.
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"'
Cloud Logging 비용 예산 관리를 위한 4단계도 참고하세요.