Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cpu Usage Percentage: Constant ZERO percentage which is inconsistent with 'docker stats' results #16

Open
zsuzhengdu opened this issue Sep 21, 2015 · 3 comments

Comments

@zsuzhengdu
Copy link

When we using 'docker-collectd-plugin' to collect the cpu usage percentage of docker images, we noticed that we constantly get 'ZERO' cpu usage percentage. It looks like the following piece of code never been executed and we noticed that there is NO key named ': precpu_stats' existing in the 'stats' results.

if 'precpu_stats' in stats:
            precpu_stats = stats['precpu_stats']
            precpu_usage = precpu_stats['cpu_usage']
            cpu_delta = cpu_usage['total_usage'] - precpu_usage['total_usage']
            system_delta = system_cpu_usage - precpu_stats['system_cpu_usage']
            if system_delta > 0 and cpu_delta > 0:
                cpu_percent = 100.0 * cpu_delta / system_delta * len(percpu)

An example 'stats' results returned by running the script.

{'read': '2015-09-21T14:24:33.520403545Z', 'memory_stats': {'usage': 17383424, 'limit': 12454260736, 'failcnt': 0, 'stats': {'unevictable': 0, 'total_inactive_file': 1208320, 'total_rss_huge': 2097152, 'hierarchical_memsw_limit': 18446744073709551615L, 'total_cache': 3108864, 'total_mapped_file': 348160, 'mapped_file': 348160, 'pgfault': 55822, 'total_writeback': 0, 'hierarchical_memory_limit': 18446744073709551615L, 'total_active_file': 1855488, 'rss_huge': 2097152, 'cache': 3108864, 'active_anon': 13950976, 'pgmajfault': 7, 'total_pgpgout': 47684, 'writeback': 0, 'pgpgout': 47684, 'swap': 0, 'total_active_anon': 13950976, 'total_unevictable': 0, 'total_pgfault': 55822, 'total_pgmajfault': 7, 'total_inactive_anon': 0, 'total_swap': 0, 'inactive_file': 1208320, 'pgpgin': 51327, 'total_pgpgin': 51327, 'rss': 13905920, 'active_file': 1855488, 'inactive_anon': 0, 'total_rss': 13905920}, 'max_usage': 17960960}, 'blkio_stats': {'io_service_time_recursive': [], 'sectors_recursive': [], 'io_service_bytes_recursive': [], 'io_serviced_recursive': [], 'io_time_recursive': [], 'io_queue_recursive': [], 'io_merged_recursive': [], 'io_wait_time_recursive': []}, 'network': {'tx_dropped': 0, 'rx_packets': 0, 'rx_bytes': 0, 'tx_errors': 0, 'rx_errors': 0, 'tx_bytes': 0, 'rx_dropped': 0, 'tx_packets': 0}, 'cpu_stats': {'cpu_usage': {'usage_in_usermode': 118660000000, 'total_usage': 687452661813, 'percpu_usage': [86961004788, 85721611081, 84682975064, 86005552073, 86024993357, 83312731162, 82217459541, 92526334747], 'usage_in_kernelmode': 266830000000}, 'system_cpu_usage': 487433850000000, 'throttling_data': {'throttled_time': 0, 'periods': 0, 'throttled_periods': 0}}}
@MoAgamia
Copy link

Hi, i have got same problem as zsuzhengdu stated exactly
After viewing https://github.com/lebauce/docker-collectd-plugin/pull/17/commits
where it said it was solved for me now graphite doesn't show any results for cpu percentage (cpu_percent)

screenshot from 2015-09-26 23 12 16

@jeanpralo
Copy link

You must be running an old version of docker, precpu_stats arrived in May this year: moby/moby#13320

There is an issue around the fact that it is currently not documented, hence it might be a bit confusing :
moby/moby#16849

@zsuzhengdu
Copy link
Author

@jeanpralo You are right. Running Docker 1.7.1 and found this issue.

The fix recorded the cup_usage in previous cycle with interval 1second.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants