You have a Compute Engine application that you want to autoscale when total memory usage exceeds 80%. You have installed the Cloud Monitoring agent and configured the autoscaling policy as follows: ✑ Metric identifier: agent.googleapis.com/memory/percent_used ✑ Filter: metric.label.state = 'used' ✑ Target utilization level: 80 ✑ Target type: GAUGE You observe that the application does not scale under high load. You want to resolve this. What should you do?
Choose an answer
Tap an option to check your answer.
Correct answer: Change the filter to metric.label.state = 'used' AND metric.label.state = 'buffered' AND metric.label.state = 'cached' AND metric.label.state = 'slab'..
Why this is the answer
The autoscaler needs to understand the total "used" memory, which includes not just used but also buffered, cached, and slab memory. By default, agent.googleapis.com/memory/percentused with metric.label.state = 'used' only accounts for actively used memory, not the memory consumed by the OS for caching and buffering, which is still unavailable to applications. Expanding the filter to include these states provides a more accurate representation of the memory truly consumed by the system. Changing the Target type to DELTAPERMINUTE is incorrect because memory utilization is a point-in-time measurement (GAUGE), not a rate of change. Changing the Metric identifier to agent.googleapis.com/memory/bytesused would require recalculating the target utilization, and the original metric percentused is more direct for percentage-based autoscaling. Changing the filter to metric.label.state = 'free' and the Target utilization to 20 would trigger autoscaling when 80% of memory is free, which is the opposite of the desired behavior.
Pass your exam — without the endless answer hunt
Get every verified question and explanation for this exam in one place, and save hours of prep. 1,000+ certifications · 20+ languages · free to start.
Pass your exam faster → No card needed