Commit Graph

202 Commits

Author SHA1 Message Date
Vish Kannan
195772a1bc Merge pull request #245 from vmarmol/tests
Refactor and dependency inject containerData deps
2014-09-22 10:39:55 -07:00
Victor Marmol
e759059a09 Refactor and dependency inject containerData deps 2014-09-22 10:20:54 -07:00
Victor Marmol
e22831f1bd Flatten ContainerSpec. 2014-09-19 10:14:22 -07:00
Victor Marmol
b63d61ca97 Use inotify to watch for new containers.
This reduces cAdvisor CPU usage below 1% in my CoreOS system.

We also reduce global housekeeping to every 60s as a fallback in case we
miss an event.
2014-09-18 12:52:09 -07:00
Vish Kannan
58e019028d Merge pull request #235 from vmarmol/rm
Remove remaining parts of samples and percentiles.
2014-09-17 12:53:34 -07:00
Victor Marmol
621bb22eeb Make dynamic housekeeping flag configurable 2014-09-16 11:04:45 -07:00
Victor Marmol
9dd8621686 Remove remaining parts of samples and percentiles. 2014-09-15 14:38:51 -07:00
Rohit Jnagal
e4b28d9d78 Merge pull request #233 from vmarmol/master
Removing sampling and percentiles from interface.
2014-09-15 14:20:25 -07:00
Victor Marmol
42add2409a Removing sampling and percentiles from interface.
Also removing all implementations.
2014-09-15 14:13:07 -07:00
Victor Marmol
4e028d7995 Make housekeeping interval dynamic, fist signal is resource usage.
If no resources are used by the container since the last housekeeping,
we double the housekeeping interval until --max_housekeeping_interval.
If usage was detected, we drop it back to the baseline
(--housekeeping_interval).

From my tests this reduces CPU usage in CoreOS from ~8% to ~3% with no
real loss of accuracy.

Fixes #159
2014-09-10 15:01:54 -07:00
Victor Marmol
1bdef9797b Prepare housekeeping interval to be dynamic.
Change housekeeping to be from a fixed interval to a possibly varied
interval decided by nextHousekeeping().
2014-09-09 14:00:30 -07:00
Victor Marmol
c692e9388d Move the initial housekeeping tick to the housekeeping thread.
This significantly reduces startup time.
2014-09-03 21:45:57 -07:00
Victor Marmol
3d10fc747c Make the duration of housekeeping flag configurable. 2014-08-30 19:57:53 -07:00
Vishnu Kannan
1a24eed18f Fix storage driver buffer duration default value.
The cache will now hold atlest the minimum number of stats required by the UI and more
if the buffer duration is longer than the default.

Docker-DCO-1.1-Signed-off-by: Vishnu Kannan <vishnuk@google.com> (github: vishh)
2014-08-20 20:46:14 +00:00
Victor Marmol
4187dc3bcb Fix capitalization in log files. 2014-08-07 11:51:15 -07:00
Vishnu Kannan
3e390e0f33 Use glog instead of 'log' library.
Docker-DCO-1.1-Signed-off-by: Vishnu Kannan <vishnuk@google.com> (github: vishh)
2014-08-07 18:38:58 +00:00
Victor Marmol
41e27e40ef Adding v1.1 remote API.
Main addition is the "subcontainers" resource which provides
ContainerInfo for all subcontainers (recursively and including
self) of the specified container.
2014-08-01 16:17:43 -07:00
Nan Deng
46e0ede568 remove TestGetContainerInfoWithDefaultValue() 2014-07-23 18:13:38 -07:00
Nan Deng
9401d35ce2 gofmt -r "MemoryUsagePercentages->MemoryUsagePercentiles" 2014-07-23 17:58:50 -07:00
Nan Deng
2ac720aa3f remove FillDefaults() 2014-07-23 17:55:25 -07:00
Vishnu Kannan
5dfa7b64ba Removed NotActive error message from container package.
Imporved error messages.
2014-07-22 19:55:14 +00:00
Vishnu Kannan
ef13440034 Addressed comments. Another series of bug fixes.
Modified the docker driver and lmctfy driver to skip containers they cannot handle.
2014-07-22 19:55:14 +00:00
Vishnu Kannan
1edb798de5 Features:
Added Network Stats to Container Info. It still not exposed via the HTTP UI.
Bug fixes:
1. Modified docker handler to use libcontainer.GetStats instead of quering the fs package.
2. cAdvisor will not stall if any of its core operations fail.
3. cAdvisor will safely ignore any inactive or leaked docker containers. When containers are leaked cgroup state exists but docker is not aware of them.
2014-07-22 18:58:16 +00:00
Victor Marmol
1636c3e759 Change ContainerHandlerFactories to decide what containers they support.
This allows a ContainerHandlerFactory to register a CanHandle() function
which is called to determine whether the factory can handle a particular
container.

This commit disables being able to run cAdvisor without lmctfy. This
should be enabled again with a "no-op" global factory which I would like
to do in a separate PR.
2014-07-16 16:48:45 -07:00
Nan Deng
6818ac9b9f gofmt -r "ContainerInfoQuery->ContainerInfoRequest" 2014-07-08 18:04:57 -07:00
Nan Deng
d8e9f8e5a9 gofmt -r "FillWithDefaultValues->FillDefaults" 2014-07-08 17:20:47 -07:00
Nan Deng
f2a0365766 gofmt -r "CpuUsagePercentages->CpuUsagePercentiles" 2014-07-08 17:20:04 -07:00
Nan Deng
d932d351ef test on client library 2014-07-08 12:49:40 -07:00
Nan Deng
4d0b365d43 let users decide how many stats/samples they want to retrieve 2014-07-07 22:04:30 -07:00
Nan Deng
f8542e2a33 check subcontainers 2014-07-07 16:51:49 -07:00
Nan Deng
7df7989849 test get info 2014-07-03 22:25:03 -07:00
Nan Deng
4df4b0ee2e unit tests for containerData 2014-07-03 22:08:24 -07:00
Nan Deng
e18c7fbf8f report error if there's a nil storage driver 2014-06-17 15:07:41 -07:00
Nan Deng
e1dcc93231 use in memory storage to do stats 2014-06-17 13:13:50 -07:00
Nan Deng
3718b139b3 remove StatsPercentiles in container handler 2014-06-17 12:55:51 -07:00
Victor Marmol
fbf6e85fc7 Renaming StatsSummary to StatsPercentiles 2014-06-16 17:49:37 -07:00
Nan Deng
a6763f4525 gofmt -r "WriteStats->AddStats" 2014-06-16 14:55:39 -07:00
Nan Deng
196b05f317 remove statsproc 2014-06-16 14:51:35 -07:00
Nan Deng
dc9f4422b4 rename 2014-06-16 14:51:35 -07:00
Nan Deng
a8401c422e stats writers 2014-06-16 14:49:59 -07:00
Nan Deng
103e83fd86 stats processor 2014-06-16 14:49:09 -07:00
Rohit Jnagal
53dee582f5 Add cadvisor version to VersionInfo.
Docker-DCO-1.1-Signed-off-by: Rohit Jnagal <jnagal@google.com> (github: rjnagal)
2014-06-16 19:00:19 +00:00
Rohit Jnagal
54fbc922a5 Merge remote-tracking branch 'upstream/master'
Docker-DCO-1.1-Signed-off-by: Rohit Jnagal <jnagal@google.com> (github: rjnagal)
2014-06-16 17:22:48 +00:00
Rohit Jnagal
26a5cdabca Add version information for components we depend on.
Docker-DCO-1.1-Signed-off-by: Rohit Jnagal <jnagal@google.com> (github: rjnagal)
2014-06-16 17:20:09 +00:00
Victor Marmol
14028a1cf6 Remove all of a container's aliases on destroy 2014-06-13 18:28:40 -07:00
Victor Marmol
410c27a84f Track a container by all of its aliases 2014-06-13 18:24:59 -07:00
Nan Monnand Deng
fa0f3efab7 fix the memory leak problem mentioned in #26 2014-06-13 14:02:26 -04:00
Nan Deng
90fc23fe61 rename var 2014-06-12 17:36:42 -07:00
Nan Deng
312bcae2db gofmt -r "ContainerRef->ContainerReference" -w -l . 2014-06-12 17:32:46 -07:00
Nan Deng
163179a84e changed pages and manager. 2014-06-12 17:31:26 -07:00
Nan Deng
2f4e76b648 rename 2014-06-12 14:39:33 -07:00
Victor Marmol
712f9fb32f Migrating cAdvisor code from lmctfy 2014-06-09 12:12:07 -07:00