@@ -748,6 +748,8 @@ message LinuxPodSandboxStats {
748
748
ProcessUsage process = 4 ;
749
749
// Stats of containers in the measured pod sandbox.
750
750
repeated ContainerStats containers = 5 ;
751
+ // IO usage gathered for the pod sandbox.
752
+ IoUsage io = 6 ;
751
753
}
752
754
753
755
// WindowsPodSandboxStats provides the resource usage statistics for a pod sandbox on windows
@@ -1793,6 +1795,8 @@ message ContainerStats {
1793
1795
FilesystemUsage writable_layer = 4 ;
1794
1796
// Swap usage gathered from the container.
1795
1797
SwapUsage swap = 5 ;
1798
+ // IO usage gathered from the container.
1799
+ IoUsage io = 6 ;
1796
1800
}
1797
1801
1798
1802
// WindowsContainerStats provides the resource usage statistics for a container specific for Windows
@@ -1807,6 +1811,27 @@ message WindowsContainerStats {
1807
1811
WindowsFilesystemUsage writable_layer = 4 ;
1808
1812
}
1809
1813
1814
+ // PSI statistics for an individual resource.
1815
+ message PsiStats {
1816
+ // PSI data for all tasks in the cgroup.
1817
+ PsiData Full = 1 ;
1818
+ // PSI data for some tasks in the cgroup.
1819
+ PsiData Some = 2 ;
1820
+ }
1821
+
1822
+ // PSI data for an individual resource.
1823
+ message PsiData {
1824
+ // Total time duration for tasks in the cgroup have waited due to congestion.
1825
+ // Unit: nanoseconds.
1826
+ uint64 Total = 1 ;
1827
+ // The average (in %) tasks have waited due to congestion over a 10 second window.
1828
+ double Avg10 = 2 ;
1829
+ // The average (in %) tasks have waited due to congestion over a 60 second window.
1830
+ double Avg60 = 3 ;
1831
+ // The average (in %) tasks have waited due to congestion over a 300 second window.
1832
+ double Avg300 = 4 ;
1833
+ }
1834
+
1810
1835
// CpuUsage provides the CPU usage information.
1811
1836
message CpuUsage {
1812
1837
// Timestamp in nanoseconds at which the information were collected. Must be > 0.
@@ -1816,6 +1841,8 @@ message CpuUsage {
1816
1841
// Total CPU usage (sum of all cores) averaged over the sample window.
1817
1842
// The "core" unit can be interpreted as CPU core-nanoseconds per second.
1818
1843
UInt64Value usage_nano_cores = 3 ;
1844
+ // CPU PSI statistics.
1845
+ PsiStats psi = 4 ;
1819
1846
}
1820
1847
1821
1848
// WindowsCpuUsage provides the CPU usage information specific to Windows
@@ -1845,6 +1872,15 @@ message MemoryUsage {
1845
1872
UInt64Value page_faults = 6 ;
1846
1873
// Cumulative number of major page faults.
1847
1874
UInt64Value major_page_faults = 7 ;
1875
+ // Memory PSI statistics.
1876
+ PsiStats psi = 8 ;
1877
+ }
1878
+
1879
+ message IoUsage {
1880
+ // Timestamp in nanoseconds at which the information were collected. Must be > 0.
1881
+ int64 timestamp = 1 ;
1882
+ // IO PSI statistics.
1883
+ PsiStats psi = 2 ;
1848
1884
}
1849
1885
1850
1886
message SwapUsage {
0 commit comments