Skip to main content

Pressure Stall Information

Plugin: proc.plugin Module: /proc/pressure

Overview

Introduced in Linux kernel 4.20, /proc/pressure provides information about system pressure stall information (PSI). PSI is a feature that allows the system to track the amount of time the system is stalled due to resource contention, such as CPU, memory, or I/O.

The collectors monitored 3 separate files for CPU, memory, and I/O:

  • cpu: Tracks the amount of time tasks are stalled due to CPU contention.
  • memory: Tracks the amount of time tasks are stalled due to memory contention.
  • io: Tracks the amount of time tasks are stalled due to I/O contention.
  • irq: Tracks the amount of time tasks are stalled due to IRQ contention.

Each of them provides metrics for stall time over the last 10 seconds, 1 minute, 5 minutes, and 15 minutes.

Monitoring the /proc/pressure files can provide important insights into system performance and capacity planning:

  • Identifying resource contention: If these metrics are consistently high, it indicates that tasks are frequently being stalled due to lack of resources, which can significantly degrade system performance.

  • Troubleshooting performance issues: If a system is experiencing performance issues, these metrics can help identify whether resource contention is the cause.

  • Capacity planning: By monitoring these metrics over time, you can understand trends in resource utilization and make informed decisions about when to add more resources to your system.

This collector is supported on all platforms.

This collector only supports collecting metrics from a single instance of this integration.

Default Behavior

Auto-Detection

This integration doesn't support auto-detection.

Limits

The default configuration for this integration does not impose any limits on data collection.

Performance Impact

The default configuration for this integration is not expected to impose a significant performance impact on the system.

Metrics

Metrics grouped by scope.

The scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels.

Per Pressure Stall Information instance

This scope has no labels.

Metrics:

MetricDimensionsUnit
system.cpu_some_pressuresome10, some60, some300percentage
system.cpu_some_pressure_stall_timetimems
system.cpu_full_pressuresome10, some60, some300percentage
system.cpu_full_pressure_stall_timetimems
system.memory_some_pressuresome10, some60, some300percentage
system.memory_some_pressure_stall_timetimems
system.memory_full_pressuresome10, some60, some300percentage
system.memory_full_pressure_stall_timetimems
system.io_some_pressuresome10, some60, some300percentage
system.io_some_pressure_stall_timetimems
system.io_full_pressuresome10, some60, some300percentage
system.io_full_pressure_stall_timetimems

Alerts

There are no alerts configured by default for this integration.

Setup

Prerequisites

No action required.

Configuration

File

There is no configuration file.

Options

There are no configuration options.

Examples

There are no configuration examples.


Do you have any feedback for this page? If so, you can open a new issue on our netdata/learn repository.