Merge pull request #24015 from yujuhong/rss_memory

Automatic merge from submit-queue

kubele: add RSS memroy to the summary API
This commit is contained in:
k8s-merge-robot 2016-04-12 05:51:35 -07:00
commit fda8ec2f5d
3 changed files with 7 additions and 0 deletions

View File

@ -133,6 +133,9 @@ type MemoryStats struct {
// The amount of working set memory. This includes recently accessed memory, // The amount of working set memory. This includes recently accessed memory,
// dirty memory, and kernel memory. UsageBytes is <= TotalBytes. // dirty memory, and kernel memory. UsageBytes is <= TotalBytes.
WorkingSetBytes *uint64 `json:"workingSetBytes,omitempty"` WorkingSetBytes *uint64 `json:"workingSetBytes,omitempty"`
// The amount of anonymous and swap cache memory (includes transparent
// hugepages).
RSSBytes *uint64 `json:"rssBytes,omitempty"`
// Cumulative number of minor page faults. // Cumulative number of minor page faults.
PageFaults *uint64 `json:"pageFaults,omitempty"` PageFaults *uint64 `json:"pageFaults,omitempty"`
// Cumulative number of major page faults. // Cumulative number of major page faults.

View File

@ -280,6 +280,7 @@ func (sb *summaryBuilder) containerInfoV2ToStats(
Time: unversioned.NewTime(cstat.Timestamp), Time: unversioned.NewTime(cstat.Timestamp),
UsageBytes: &cstat.Memory.Usage, UsageBytes: &cstat.Memory.Usage,
WorkingSetBytes: &cstat.Memory.WorkingSet, WorkingSetBytes: &cstat.Memory.WorkingSet,
RSSBytes: &cstat.Memory.RSS,
PageFaults: &pageFaults, PageFaults: &pageFaults,
MajorPageFaults: &majorPageFaults, MajorPageFaults: &majorPageFaults,
} }

View File

@ -39,6 +39,7 @@ const (
offsetMemPageFaults offsetMemPageFaults
offsetMemMajorPageFaults offsetMemMajorPageFaults
offsetMemUsageBytes offsetMemUsageBytes
offsetMemRSSBytes
offsetMemWorkingSetBytes offsetMemWorkingSetBytes
offsetNetRxBytes offsetNetRxBytes
offsetNetRxErrors offsetNetRxErrors
@ -258,6 +259,7 @@ func summaryTestContainerInfo(seed int, podName string, podNamespace string, con
Memory: &v1.MemoryStats{ Memory: &v1.MemoryStats{
Usage: uint64(seed + offsetMemUsageBytes), Usage: uint64(seed + offsetMemUsageBytes),
WorkingSet: uint64(seed + offsetMemWorkingSetBytes), WorkingSet: uint64(seed + offsetMemWorkingSetBytes),
RSS: uint64(seed + offsetMemRSSBytes),
ContainerData: v1.MemoryStatsMemoryData{ ContainerData: v1.MemoryStatsMemoryData{
Pgfault: uint64(seed + offsetMemPageFaults), Pgfault: uint64(seed + offsetMemPageFaults),
Pgmajfault: uint64(seed + offsetMemMajorPageFaults), Pgmajfault: uint64(seed + offsetMemMajorPageFaults),
@ -310,6 +312,7 @@ func checkMemoryStats(t *testing.T, label string, seed int, stats *kubestats.Mem
assert.EqualValues(t, testTime(timestamp, seed).Unix(), stats.Time.Time.Unix(), label+".Mem.Time") assert.EqualValues(t, testTime(timestamp, seed).Unix(), stats.Time.Time.Unix(), label+".Mem.Time")
assert.EqualValues(t, seed+offsetMemUsageBytes, *stats.UsageBytes, label+".Mem.UsageBytes") assert.EqualValues(t, seed+offsetMemUsageBytes, *stats.UsageBytes, label+".Mem.UsageBytes")
assert.EqualValues(t, seed+offsetMemWorkingSetBytes, *stats.WorkingSetBytes, label+".Mem.WorkingSetBytes") assert.EqualValues(t, seed+offsetMemWorkingSetBytes, *stats.WorkingSetBytes, label+".Mem.WorkingSetBytes")
assert.EqualValues(t, seed+offsetMemRSSBytes, *stats.RSSBytes, label+".Mem.RSSBytes")
assert.EqualValues(t, seed+offsetMemPageFaults, *stats.PageFaults, label+".Mem.PageFaults") assert.EqualValues(t, seed+offsetMemPageFaults, *stats.PageFaults, label+".Mem.PageFaults")
assert.EqualValues(t, seed+offsetMemMajorPageFaults, *stats.MajorPageFaults, label+".Mem.MajorPageFaults") assert.EqualValues(t, seed+offsetMemMajorPageFaults, *stats.MajorPageFaults, label+".Mem.MajorPageFaults")
} }