로깅을 사용 설정한 후에는 로그를 라우팅, 저장, 보관하는 방법을 설정해야 합니다. 무료 사용량 및 보관 한도를 초과하면 로그 처리 및 보관에 대한 추가 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
속성이 없는 차량은 제외됩니다.
다음 명령어는 UpdateVehicle
로그에서 debug
속성이 없는 차량을 제외하도록 _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"'
비어 있는 제한된 사용 로그 필터링
사용 제한 로그를 사용 설정하면 작업에서 제한된 필드를 채우지 않더라도 모든 일반 로그에 대한 하위 로그가 생성됩니다. 이러한 비어 있고 제한된 로그를 필터링하면 비용을 줄일 수 있습니다.
다음 명령어는 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단계도 참고하세요.