Euan Kemp
d2e11efba2
libcontainer: use real number of CPUs for usage
...
As of the 4.7 kernel, the cpustats field returned from libcontainer
contains values for every possible cpu (including nonexistent ones).
The extra values are all 0s.
If we assume that hotplug events won't happen, we can get a more
accurage cpu count by using runtime.NumCPU and then ignoring any values
beyond that.
2017-08-30 14:26:26 -07:00
Karl
5a033c064e
Add runtime options for TLS support
2017-08-24 15:14:33 +02:00
Derek Carr
6fa48d9048
Expose total_rss when hierarchy is enabled
2017-08-23 14:56:59 -04:00
Derek Carr
d493f11f0b
Reduce log spam when unable to get network stats
2017-08-18 16:11:03 -04:00
Andrew Pilloud
9e40f1c837
Fix race in ignoring non-existent files
2017-06-08 11:16:31 -07:00
David Ashpole
96b603e20a
Merge branch 'master' into overlay2
2017-05-31 14:05:54 -07:00
David Ashpole
de308101e4
Merge branch 'master' into container-restart-count
2017-05-30 11:33:39 -07:00
Ricardo Pchevuzinske Katz
f5a896ef4c
Gather information from RestartCount counter and put into labels
2017-05-30 14:05:14 -03:00
Andy Goldstein
69c085d9fa
Cache the Docker thin pool name
...
Cache the Docker thin pool name in the dockerFactory and pass it to each Docker container handler,
instead of calling `docker info` each time a new container handler is created, as the thin pool name
is extremely unlikely to change.
2017-05-30 11:50:58 -04:00
Clayton Coleman
4e25a7951f
Report container FS metrics into prometheus /metrics
...
PerDiskStats reported from cgroups were not being surfaced into
prometheus. In order to properly correlate the metrics, we need to
assign a device label to each metric (which is the FS or device path).
Since blkio cgroup tracks devices, we create a synthetic device
`/dev/NAME` for the metric.
Assign a Device label to each PerDiskStat for the handlers up front, and
then surface the PerDiskStat values into the prometheus metrics. Report
two new metrics - total bytes read and total bytes written.
2017-04-24 20:46:55 -04:00
Bilal Amarni
e0c8ec569d
[docker] add overlay2 storage driver
...
Signed-off-by: Bilal Amarni <bilal.amarni@gmail.com>
2017-04-13 13:39:45 +02:00
Tristan Colgate
227bb3a79d
Add udp and udp6 network statistics
2017-04-10 20:41:51 +01:00
Manjunath A Kumatagi
8fb1158353
Add Docker API version
2017-04-04 10:56:11 +05:30
Brian Akins
feecd47daa
Add watcher for zfs similar to devicemapper
...
minor cleanup
ensure we look at parent dataset for limit, etc
2017-03-15 18:31:11 -04:00
Derek Carr
b172ba65b4
disable thin_ls due to excessive iops
2017-02-09 10:29:58 -05:00
Calum Lacroix
6d67091c8b
Checks for successful string split on env variable
2017-02-08 22:39:34 +00:00
Calum Lacroix
967e09a3a5
Checks environment variables for empty strings
...
If an environment variable is an empty string, cadvisor panics and fails to start
2017-02-08 18:44:56 +00:00
Derek Carr
4ad5c58f6a
Ignore any .mount cgroup in docker handler
2017-01-16 11:02:37 -05:00
David Ashpole
9fdeefe3e4
Cadvisor now publishes per-container inode stats using the command 'find . -xdev printf '.'| wc -c' this is published in the v2 api using a new field
2016-10-12 13:16:21 -07:00
Tim St. Clair
afe67fec68
Cleanup comment style: // should be proceded by a space
2016-10-07 17:06:02 -07:00
derekwaynecarr
b84046f12c
Look at all cgroup mounts
2016-09-22 15:34:59 -04:00
Chun Chen
844c98e073
GetSpec missing memory reservation
2016-08-16 23:26:46 +08:00
Florian Koch
3ce98a46c4
add cgropu swap usage and export as prometheus metric
2016-08-09 07:33:37 +02:00
Tobias Schmidt
1653733ea7
Expose cpu cgroup CFS prometheus metrics
...
If CPU quota is configured (cpu.cfs_quota != -1) the CFS will provide
stats about elapsed periods and throtting in cpu.stats. This change
makes these information available as container_cpu_cfs_* metrics.
2016-08-06 18:08:26 -04:00
Andy Goldstein
2b525ff87e
Ensure minimum kernel version for thin_ls
...
Ensure that kernel >= 4.4.0 or RHEL/Centos 7 kernel >= 3.10.0-366 exists before starting the thin
pool watcher. Prior versions have a bug in which reserving and releasing the metadata snapshot can
cause thin pool corruption.
2016-08-04 16:14:40 -04:00
derekwaynecarr
6c114be580
Expose total inodes
2016-08-02 10:47:51 -04:00
Tim St. Clair
bbe54c0a10
Merge pull request #1368 from derekwaynecarr/inodes_pointer
...
Allow clients to know if inodes data is available
2016-07-29 10:10:30 -07:00
derekwaynecarr
cccf9d5fec
Allow clients to know if inodes are supported on a filesystem
2016-07-26 11:15:07 -04:00
Andy Goldstein
d05098b314
Lower ThinPoolWatcher cache miss log level
2016-07-23 07:07:42 -04:00
Michael Taufen
307d1b1cb3
Modify working set memory stats calculation
...
Change working set calculation to usage - total_inactive_file, rather than
usage - total_inactive_anon - total_inactive_file. Since writes to tmpfs
get tracked as total_inactive_anon when swap is disabled, the old
calculation would under-report memory pressure.
See this Kubernetes issue for context:
https://github.com/kubernetes/kubernetes/issues/28619
2016-07-15 10:58:25 -07:00
Matt Wringe
213c254bb7
Add in the ability to expose the ip address of a container.
2016-07-13 13:58:43 -04:00
Tim St. Clair
35f7bc5ee7
Move mocks to testing package to remove +build tags
...
Some go tools (e.g. godef, gorename) don't handle +build tags well, so
I refactored some packages to remove the test tags from cAdvisor.
2016-07-06 14:15:43 -07:00
Seth Jennings
eafff745a5
only fail fs stat gather if metadata device not found
2016-06-21 16:05:37 -05:00
Paul Morie
c37d048e1b
Check for thin_ls binary in path when using ThinPoolWatcher
2016-06-14 13:19:05 -04:00
Tim St. Clair
3fbe18de9a
Merge pull request #1204 from pmorie/dm-support
...
devicemapper thin_ls support
2016-05-18 12:30:05 -07:00
Paul Morie
647224c95a
Add devicemapper support for docker containers
2016-05-18 15:19:20 -04:00
Shaya Potter
6fa3687720
Polling rkt implementation of new watcher inteface ( #1284 )
...
polling rkt implementation of new watcher inteface
2016-05-17 10:34:56 -07:00
Shaya Potter
e02632463b
Refactor container watching out of raw handler into its own inteface / package
2016-05-11 20:27:10 -07:00
Tim St. Clair
8404284c42
Merge pull request #1274 from timstclair/container
...
Delete unused ListThreads container method
2016-05-09 11:59:28 -07:00
Tim St. Clair
d1868287db
Clean up docker root dir
2016-05-06 19:31:36 -07:00
Tim St. Clair
4c506006f2
Don't validate docker state file, since it's no longer used
2016-05-06 19:29:24 -07:00
Tim St. Clair
019bfaecc7
Delete unused ListThreads container method
2016-05-06 13:45:29 -07:00
Tim St. Clair
05fb225624
Merge pull request #1269 from sjpotter/update-rkt
...
version checking for rkt + godep changes
2016-05-06 12:40:40 -07:00
Shaya Potter
44795d7ce0
add version checking for rkt api service + godep changes
2016-05-06 01:01:20 -07:00
Vish Kannan
bebe18b67a
Merge pull request #1261 from sjpotter/listToCommon
...
move ListContainers code to common and make rkt play nice
2016-05-03 10:12:54 -07:00
Shaya Potter
5ca11bb1a0
move ListContainers code to common and make rkt play nice
...
playing nice means not elliding the system.slice cgroup but allowing the
raw handler to handle it
2016-05-03 07:14:53 -07:00
Tim St. Clair
4d3ef349fb
Move utils/machine -> machine
2016-05-02 15:56:49 -07:00
Tim St. Clair
f365c6a115
Move docker types to v1 API
2016-05-02 15:52:29 -07:00
Tim St. Clair
0c89fd1b71
Refactor docker-specific functions from manager to docker
2016-05-02 12:24:31 -07:00
Lantao Liu
ece4c555cc
switch to the new engine-api
2016-04-25 19:22:05 -07:00