Vishnu kannan
dabec0a6b2
Fix fs stats handling for non-aufs storage drivers.
...
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-02-05 16:32:07 -08:00
Jimmi Dyson
a8946729de
Merge pull request #969 from f0/master
...
add support for cgroup CPUQuota and CPUPeriod prometheus limit
2016-02-04 16:51:38 +00:00
Vishnu kannan
3f75344053
Fallback to flag defined value for storage dir in case docker info
...
doesn't provide the storage dir.
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-02-03 18:00:59 -08:00
Vishnu kannan
f5829b4744
Rework the v2.1 API to expose container Info.
...
Added a test for filesystem stats. Devicemapper backend is ignored
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-02-03 17:02:49 -08:00
Florian Koch
669bc4abfa
add cgroup quota and period support / add missing tests
2016-02-02 20:33:11 +01:00
Vishnu kannan
59c03672d0
Handle fs metrics for docker version >= 1.10.0
...
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-02-02 10:20:20 -08:00
Vishnu kannan
5ab2f45fc6
Use storage dir from docker info for filesystem usage tracking.
...
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-02-01 18:20:00 -08:00
Tim St. Clair
f5bceae3a2
Merge pull request #1033 from asteris-llc/master
...
Add the support for kafka in cAdvisor's storage, including output of container id and labels
2016-01-29 17:17:06 -05:00
Allison Richardet
80ba7e7db7
Add the support for kafka in cAdvisor's storage, including output of container id and labels
...
Addressing PR Feedback
Addressing PR Feedback
2016-01-27 21:33:57 -06:00
Jimmi Dyson
4c345b1989
Merge pull request #1063 from dqminh/fix-envs-handler
...
Initialize env mapping for labels when creating docker container
2016-01-27 10:46:24 +00:00
Vish Kannan
bef8522964
Merge pull request #1046 from jimmidyson/libcontainer-bump
...
bump(github.com/opencontainers/runc/libcontainer)
2016-01-26 14:35:46 -08:00
Jimmi Dyson
336821d28e
Fix up networking stats for new docker network functionality
2016-01-26 11:32:39 +00:00
Jimmi Dyson
33386f899b
bump(github.com/opencontainers/runc/libcontainer)
...
Fixes issues with breaking changes to ``GetPids` which is affecting
downstream consumers of cadvisor (e.g. Kubernetes).
2016-01-26 09:46:59 +00:00
Daniel Dao
127b09f5ae
initialize env mapping
...
Signed-off-by: Daniel Dao <dqminh@cloudflare.com>
2016-01-18 15:58:45 +00:00
Vishnu Kannan
944201c86b
Refactor api conversion methods.
2016-01-15 15:40:15 -08:00
Vishnu kannan
6dfdd8eca1
1. Update filesystem stats APIs.
...
2. Add BaseUsage to containers which includes only the rootfs usage, if available.
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-01-15 15:39:17 -08:00
Shimin Guo
a26b58ec8e
expose page cache size
2016-01-15 08:45:51 -08:00
Shimin Guo
1a867bdadd
expose RSS
2016-01-15 08:45:51 -08:00
Jimmi Dyson
4e9d29a408
Fix FS usage goroutine leaks
2016-01-14 19:30:48 +00:00
Vish Kannan
01434a1c54
Merge pull request #1020 from miguel250/zfs-support
...
Add support ZFS filesystem
2016-01-13 11:52:37 -08:00
Daniel Dao
e5b6bfa94f
add whitelisted env as container metadata
...
This add Envs to container spec as a metadata source. When using prometheus
exposition format, they will be merged into the list of metrics' labels.
Also changed the cli flag to docker_env_metadata_whitelist, and add refenrences
of whitelist envs to API
Signed-off-by: Daniel Dao <dqminh@cloudflare.com>
2016-01-13 11:22:13 +00:00
Florian Pfitzer
009761cb53
Export image name and env variables as prometheus labels
2016-01-05 10:49:20 +00:00
Miguel Perez
e0fef76668
Add support ZFS filesystem
...
- fix container usage stat not loading on first load
2015-12-15 15:41:19 -05:00
Vishnu kannan
a6daa760c8
Fix goroutine leak in docker fs handler logic.
...
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2015-12-04 11:19:49 -08:00
Jonathan Boulle
4965f069b7
Fix case statements dealing with storageDriver
...
cf0adcc817
introduced two switch
statements to facilitate the addition of the `overlayStorageDriver`;
unfortunately neither of them conform to the Go switch semantic, which
does not fallthrough unless explicitly requested. In one case this was
innocuous (because a `break` was effectively the same as a no-op) but in
the other it would cause the `HasFilesystem` bool to not be set
appropriately in the case of `aufsStorageDriver` being used.
IMHO it's also more idiomatic to perform the default behaviour in the
default case rather than pre-setting and overriding it.
2015-12-02 16:04:01 -08:00
Vishnu Kannan
cf0adcc817
Add support for Overlayfs.
...
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2015-12-02 15:43:34 -08:00
Lei Xue
15b34b0131
add test case for compatibility.go
2015-12-02 11:01:50 +08:00
Lei Xue
7343ae4583
fix unmarshal container config failure with Docker 1.8.3
2015-12-02 11:01:12 +08:00
Lei Xue
dbbe38dfed
re-order the import package
2015-11-30 16:43:22 +08:00
Jimmi Dyson
1f679cee70
Clean up unused struct fields (via structcheck linter)
2015-11-27 22:06:16 +00:00
Jimmi Dyson
82810f13cd
Remove unused code (via deadcode linter)
2015-11-27 21:48:33 +00:00
Jimmi Dyson
360c73c6fd
Improve perf of interface stats parsing
2015-11-27 14:12:41 +00:00
Jimmi Dyson
f9eb56e800
Merge pull request #966 from afein/godep_update_runc
...
[Godeps] changed docker/libcontainer dependency to runc/libcontainer
2015-11-26 15:19:28 +00:00
Jimmi Dyson
cec96eb68b
Merge pull request #978 from jimmidyson/regexp-perf
...
Regexp tidy up
2015-11-26 09:45:27 +00:00
Jimmi Dyson
d1fce20304
Regexp tidy up
2015-11-26 09:14:26 +00:00
Jimmi Dyson
17622ecba1
Rename readInt64 -> readUInt64 for clarity
2015-11-25 16:42:33 +00:00
Alex Mavrogiannis
4533dd7d18
changed libcontainer dependency to runc
2015-11-21 14:04:01 -08:00
Vishnu kannan
401cbbc48f
Add a --nosystemd
flag to avoid assuming systemd to be the cgroups
...
owner for docker containers.
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2015-11-16 10:37:54 -08:00
Vishnu Kannan
419dd8a778
Include log usage for aufs driver.
...
Signed-off-by: Vishnu Kannan <vishnuk@google.com>
2015-11-10 14:16:20 -08:00
Vish Kannan
47a1fa4fff
Merge pull request #936 from mqliang/master
...
Fix imported package names to not use mixedCaps or under_scores
2015-11-04 10:47:48 -08:00
Jimmi Dyson
561cc1da4f
Use file reader directly for net stats
2015-10-28 12:51:19 +00:00
Jimmi Dyson
c72e0c23a5
Add test for net dev stats
2015-10-28 12:51:13 +00:00
Jimmi Dyson
da771a0977
Drop regexp for net stats parsing
...
Reported in kubernetes/kubernetes#16296
2015-10-27 20:16:49 +00:00
Jimmi Dyson
8b6e002e0a
Disable tcp stats collection
...
Fixes #938
2015-10-22 21:05:46 +01:00
mqliang
ce001dcd4e
Fix imported package names to not use mixedCaps or under_scores
2015-10-22 12:10:57 +08:00
Jimmi Dyson
b8b6e1bac1
Support devicemapper storage for docker images dir
...
Fixes #920
2015-10-21 09:56:33 +01:00
Jimmi Dyson
357e6a0f23
Reuse cached docker client
...
Fixes #925
2015-10-20 20:15:54 +01:00
Jimmi Dyson
5a5d0575f5
Docker, libcontainer, docker client bumps
2015-10-20 09:22:12 +01:00
Jimmi Dyson
b4a6819291
Switch to select on time.After & close channel for track usage
2015-10-14 09:58:42 +01:00
Vishnu kannan
dd8345ab32
Perform separate housekeeping for docker container filesystem stats.
2015-10-08 15:58:57 -07:00
Vishnu kannan
6e51487236
Compute fs usage for docker containers less often.
...
`du` can cause a lot of cpu usage.
2015-10-08 15:01:57 -07:00
Jimmi Dyson
6ee904d129
Merge pull request #821 from basvdlei/ignore
...
Reduce the amount of bad Docker.inspects when using docker_only flag in combination with Systemd
2015-10-02 15:31:43 +01:00
Tomas Kral
bd61caf0c3
add failcnt
2015-10-02 14:24:22 +02:00
Bas van der Lei
f8eb8cc982
validate name with isContainerName func
2015-10-02 13:49:27 +02:00
Bas van der Lei
9931854585
remove dead code
2015-10-02 13:42:40 +02:00
Bas van der Lei
13674cf06c
optimize dockerCgroupRegexp
2015-09-27 00:20:52 +02:00
Florian Koch
e4262b91b1
move TCP and TCP6 stats to NetworkStats
2015-09-25 09:04:53 +02:00
Florian Koch
dd041457b5
some fixes
2015-09-24 15:44:42 +02:00
Florian Koch
c331982f21
add tcp/tcp6 statistics
2015-09-24 15:44:42 +02:00
Bas van der Lei
7788c8bd27
Ignore systemd 'containers' in the docker driver
2015-09-23 23:55:35 +02:00
Jimmi Dyson
b8fc8cd2ae
Add container specs & cadvisor version info to prometheus metrics
2015-09-09 14:28:54 +01:00
Jimmi Dyson
7e10398a50
Use proc fs to get network stats.
...
Reasons discussed in
https://github.com/google/cadvisor/issues/822#issuecomment-135811901 &
following.
2015-08-29 00:20:07 +01:00
Jimmi Dyson
ff0796712b
Add image name to container spec & prometheus metrics
...
Fixes #848
2015-08-28 12:38:16 +01:00
Jimmi Dyson
d5fa97c998
Get network stats by switching network namespace on newer Docker
...
versions.
Fixes #822
2015-08-25 23:27:01 +01:00
Rohit Jnagal
7a2f508b50
Fix network info for docker containers running with --net=host.
...
Docker still reports a loop device for these. Need to check for
more than one device to mark network as available.
2015-08-24 02:58:03 +00:00
Rohit Jnagal
a123fd72d8
Add logic to read custom metric config files from container root.
...
Docker does not provide the rootfs path through docker inspect or statefile
and the path is dependent on the storage driver being used.
Instead of enumerating the storage drivers, we pick a pid from the container
and get the config from /proc/pid/root. Although a bit expensive, this method
works for non-docker containers too.
2015-07-22 15:45:07 +00:00
Victor Marmol
4a9a57cdd0
Merge pull request #814 from anushree-n/typo
...
Fix typo
2015-07-13 10:41:01 -07:00
anushree-n
fff8880a8d
Typo in helpers.go
2015-07-13 10:30:46 -07:00
anushree-n
ddfe10af54
Rename compatability.go to compatibility.go
2015-07-13 10:29:36 -07:00
Alex Mavrogiannis
9666c8b38f
population of memory limit for the machine container
2015-07-07 14:15:38 -07:00
Victor Marmol
fc62b8c384
Copy stats before we convert them.
...
Fix # 782
2015-06-25 11:30:36 -07:00
Ananya Kumar
aaad776d5d
1 line fix for net host bug
2015-06-10 11:00:49 -07:00
Victor Marmol
72df0cb098
Send data for all interfaces for raw containers
2015-06-08 09:58:47 -07:00
Victor Marmol
b923eff11c
Expose multiple network interfaces in API.
...
Part of #686
2015-06-07 17:01:53 -07:00
Victor Marmol
53bcd977b5
Detect systemd with cgroup hierarchy.
...
The previous approach was brittle from within a container and was inconsistend.
Fixes #666
2015-06-02 13:11:46 -07:00
Victor Marmol
0525d40a4a
Add DebugInfo() API and put the information on /validate
2015-05-21 14:46:35 -07:00
Victor Marmol
1f248ee956
Add inotify watches as debug information
2015-05-21 14:40:49 -07:00
Victor Marmol
392e1be9e5
Use one InotifyWatcher
2015-05-21 14:40:49 -07:00
Victor Marmol
ab032efda9
Report the last cgroup destroy event.
2015-05-21 10:11:09 -07:00
Victor Marmol
36a6e68169
Separate inotify handling into its own object.
...
This makes it easier to ensure the error conditions are handled well and
that we don't leak watches.
Fixes #703
2015-05-21 08:36:47 -07:00
Rohit Jnagal
379e5aac57
Add manager methods to get docker status and images.
...
This is only meant to populate /docker UI page.
2015-05-13 22:07:09 +00:00
Rohit Jnagal
5e10989a78
Add an api to support ps/top.
2015-05-12 00:06:47 +00:00
Victor Marmol
86dd6cc99d
Merge pull request #706 from rjnagal/docker
...
Add 'bytes available' to fs info.
2015-05-11 15:12:37 -07:00
Rohit Jnagal
e43ada2e00
Add 'bytes available' to fs info.
...
The current capacity and usage numbers are insufficient to figure out
actual bytes available for a non-root user for the fs. Available is the
value used by df and the one we need to track to detect low diskspace
condition.
2015-05-11 19:27:40 +00:00
Victor Marmol
757ad9e1ae
WorkingSet should use inactive file
2015-05-11 09:49:29 -07:00
Victor Marmol
8928d487de
Min working set should be 0.
...
Fixes #685
2015-05-11 09:49:23 -07:00
Rohit Jnagal
4b4312b290
Improve approximation of container creation time.
...
Containers with subcontainers always report creation time to be same as the time
of creation of the latest subcontainer.
Still not an ideal solution, but accurate for most practical purposes.
2015-05-07 18:14:54 +00:00
Victor Marmol
1a1a1faa7e
Update inotify dependency.
2015-05-04 10:15:21 -07:00
Victor Marmol
a7a7aacebc
Add flags to customize the events StoragePolicy.
2015-05-01 12:04:11 -07:00
Victor Marmol
1e09f9012d
Adding container labels
2015-04-30 23:09:03 -07:00
Rohit Jnagal
d0424eca0f
Add --docker_only flag to enable tracking for only docker containers and root.
...
This reduces unnecessary load on the system and also cleans up the UI clutter.
Currently defaulted to false.
2015-04-30 23:34:44 +00:00
Victor Marmol
11462d80bc
Lowering log levels.
...
Reduce common logging using Kubernetes logging standards.
2015-04-13 15:05:41 -07:00
Rohit Jnagal
dfcc05a953
Fix networking stats by switching Tx and Rx stats.
...
A better fix is to directly use stats collected by libcontainer.
2015-04-13 17:01:06 +00:00
Victor Marmol
64c0d3d8c3
Migrating cAdvisor to new libcontainer.
...
Backwards compatability is maintained with older versions of
libcontainer.
2015-04-10 14:51:29 -07:00
Victor Marmol
e97e203d76
Adding translation layer for pre-API libcontainer configs.
2015-04-10 14:51:29 -07:00
Clayton Coleman
9ce178f707
Lazily init DBus only when it is needed
...
OpenShift has some cAdvisor packages in its import chain. The init() here
invokes Dbus start even when cAdvisor is not actively running or being
used (in our packages). This change makes the systemd check and dbus
initialization and connection lazy, occuring only the first time someone
invokes UseSystemd().
2015-03-19 16:35:48 -04:00
Rohit Jnagal
e685067a04
Merge pull request #579 from vmarmol/master
...
Start() exits gracefully when there are no factories.
2015-03-11 23:24:16 -07:00
Victor Marmol
ffdb6f5c7d
Start() exits gracefully when there are no factories.
...
This allows us to handle the case where there are no factories as
happens when testing in a non-container environment. We will still serve
the machine information that is available.
2015-03-11 21:22:16 -07:00
Rohit Jnagal
a0a419614f
Add /storage endpoint to 2.0 API.
...
/storage returns {device, mountpoint, capacity, usage} for all filesystems.
In addition, it also detect and applies label for each filesystem - currently two - "root", "docker-images".
/storage/<label> returns info about the filesystem with specific label. eg. /storage/root returns info for root filesystem.
2015-03-11 01:49:58 +00:00
Rohit Jnagal
872546ba3a
Bulk move current info api to info/v1. Making room for info/v2.
2015-03-04 00:47:28 +00:00