cha87de / kvmtop Goto Github PK
View Code? Open in Web Editor NEWA monitoring tool for black box virtual machines from KVM hypervisor level
Home Page: https://cha87de.github.io/kvmtop/
License: Other
A monitoring tool for black box virtual machines from KVM hypervisor level
Home Page: https://cha87de.github.io/kvmtop/
License: Other
Resolved by installing libncurses5
apt-get install libncurses5
You might want to add that to the documentation since that was not obvious to me and took some time figuring out :-)
Hi.
I want to collect KVM status periodically( every 1 min ).
When I set "-f 60" It report as below. I generate traffic with stress tool almost 50% on "guest VM"
Is kvmtop didn't collect CPU utilization ?
If possible, I want to ask to add CPU utilization(/proc/stat) , UUID(dmidecode -s system-uuid) and name for HOST OS. It would be very helpful to me.
This is default frequency( maybe 1 secs)
$ kvmtop -c qemu:///system --printer json --cpu --mem --net
{
"host": {
"cpu_cores": 4,
"cpu_meanfreq": 2323.987976,
"ram_Total": 8081032,
"ram_Free": 471884,
"ram_Available": 2292192,
"net_host_receivedBytes": 0,
"net_host_transmittedBytes": 0
},
"domains": [{
"UUID": "2f21bf30-baa9-49ef-ad0a-915ed281a3bb",
"name": "centos7.0",
"cpu_cores": 2,
"cpu_total": 0,
"cpu_steal": 0,
"ram_total": 2952772,
"ram_used": 141676,
"net_receivedBytes": 0,
"net_transmittedBytes": 52
}, {
"UUID": "eb40b9d1-87e6-455d-a6b4-b27229c9652c",
"name": "mepm",
"cpu_cores": 2,
"cpu_total": 50,
"cpu_steal": 0,
"ram_total": 2952772,
"ram_used": 128508,
"net_receivedBytes": 0,
"net_transmittedBytes": 52
}
]
}
Below one is set to "-f 60"
$ kvmtop -c qemu:///system --printer json --cpu --mem --net -f 60
{
"host": {
"cpu_cores": 4,
"cpu_meanfreq": 2299.977478,
"ram_Total": 8081032,
"ram_Free": 1483408,
"ram_Available": 2504672,
"net_host_receivedBytes": 6028,
"net_host_transmittedBytes": 1940
},
"domains": [{
"UUID": "2f21bf30-baa9-49ef-ad0a-915ed281a3bb",
"name": "centos7.0",
"cpu_cores": 2,
"cpu_total": 237,
"cpu_steal": 1,
"ram_total": 2952772,
"ram_used": 141676,
"net_receivedBytes": 0,
"net_transmittedBytes": 26
}, {
"UUID": "eb40b9d1-87e6-455d-a6b4-b27229c9652c",
"name": "mepm",
"cpu_cores": 2,
"cpu_total": 183219,
"cpu_steal": 55,
"ram_total": 2952772,
"ram_used": 128508,
"net_receivedBytes": 6172,
"net_transmittedBytes": 1970
}
]
}
Do I need any calculation when I set "-f" ?
cpu_steal | internal metrics | stolen (reduced) cpu utilisation over all virtual CPU cores | collect
what is the exactly means of internal metrics , is it come from libvirt api? or other ways.
Thx.
Hi,
Thanks for posting the wonderfull document but I am unable to install the kvmtop binary on my kvm server and facing an error which mentioned below:
I have refered many forums but i could not get an proper solution to fix the issue. Hope there is an proper solution to fix this.
[root@kvm kvmtop]# go install github.com/cha87de/kvmtop
/tmp/go-build971672263/github.com/rthornton128/goncurses/_obj/goncurses.o: In function ncurses_is_subwin': src/github.com/rthornton128/goncurses/goncurses.c:71: undefined reference to
is_subwin'
/tmp/go-build971672263/github.com/rthornton128/goncurses/_obj/goncurses.o: In function ncurses_is_pad': src/github.com/rthornton128/goncurses/goncurses.c:63: undefined reference to
is_pad'
collect2: ld returned 1 exit status
Replace the code for parsing string output of virsh with proper libvirt socket communication
I start/stop kvmtop several time to verify it after check out source code and build kvmtop binary by myself.
As you see below. memory info. is not collected sometimes.
./kvmtop
eb40b9d1 mepm 2 0 0 2952772 137456
cpu ram
cores 4 Total
curfreq 0.000000 Free
Availabl
cpu ram
UUID name cores total steal total used
dc5389f4 redmine- 2 0 0 2047556 101200
eb40b9d1 mepm 2 0 0 2952772 137456
914469ff openapig 2 0 0 2952772 133192
42de0be1 svcrepo 2 0 0 2952772 137304
kvmtop can't collect memory of VM correctly.
as below, some of VMs are 0 for ram_total, ram_used.
Also, I want to know meaning of ram_vsize and ram_rss. Would U let me know it ?
Is there any workaround to get ram_total / ram_used ?
UUID name ram_total ram_used ram_vsize ram_rss ram_minflt ram_cminflt ram_majflt ram_cmajflt
e450c39e-68bf-4983-b82f-bfa09225025c webserver-cho1-bfa09225025c 1786456 104288 2793398272 529088512 0 0 0 0
292c7b76-93c4-4cc7-879a-f7c0ba84ad7e mepm 3880652 3759108 5093052416 4260282368 0 0 0 0
0f090e62-57b3-4c82-b75e-0bdfefe8fe98 vedge 3880620 126388 5053624320 3986751488 0 0 0 0
e3836de7-85de-469d-b2a2-23c6cdbf43a7 VM1-23c6cdbf43a7 0 0 1892118528 164352000 0 0 0 0
1268c760-0d2f-4433-94ea-9c6f981e7ef2 VM1-9c6f981e7ef2 0 0 1853149184 153837568 0 0 0 0
9a5f50a8-f22e-4376-830e-3eb88f6aa19e VM1-3eb88f6aa19e 0 0 1892098048 154271744 0 0 0 0
4b628d5b-212d-4eca-ab61-213715fdf63d oma 1015236 88128 1891819520 181854208 0 0 0 0
d53899e4-17d1-45c3-8404-ae28f5f7f3a4 server 1015408 185896 73912320 2920448 0 0 0 0
25ab8d9b-6f38-4e9a-8736-492e59e2263d appPKG007-Com1-492e59e2263d 0 0 1361166336 175026176 0 0 0 0
aaac72f0-1fe8-4ddd-91c7-0004a02dd887 VM1-0004a02dd887 0 0 1876287488 188162048 0 0 0 0
675ad4b0-4c08-4e27-a841-c5f503f0a006 VM1-c5f503f0a006 0 0 1900519424 169979904 0 0 0 0
1624dcd0-a54b-4971-99bf-4b2fe4509949 appPKG007-Com2-4b2fe4509949 0 0 1324355584 143003648 0 0 0 0
dc878b79-4dd6-45b9-aef5-002a335ebde1 VM2-002a335ebde1 0 0 1891819520 181854208 0 0 0 0
58338920-bc48-4a8c-8612-381fcca30f0c VM2-381fcca30f0c 0 0 1756024832 169889792 0 0 0 0
d53899e4-17d1-45c3-8404-ae28f5f7f3a4 server 1015408 185896 73912320 2920448 0 0 0 0
dc878b79-4dd6-45b9-aef5-002a335ebde1 VM2-002a335ebde1 0 0 1891819520 181854208 0 0 0 0
4b628d5b-212d-4eca-ab61-213715fdf63d oma 1015236 88128 1891819520 181854208 0 0 0 0
9a5f50a8-f22e-4376-830e-3eb88f6aa19e VM1-3eb88f6aa19e 0 0 1892098048 154271744 0 0 0 0
292c7b76-93c4-4cc7-879a-f7c0ba84ad7e mepm 3880652 3759108 5093052416 4260282368 447 0 0 0
675ad4b0-4c08-4e27-a841-c5f503f0a006 VM1-c5f503f0a006 0 0 1900519424 169979904 0 0 0 0
e3836de7-85de-469d-b2a2-23c6cdbf43a7 VM1-23c6cdbf43a7 0 0 1892118528 164352000 0 0 0 0
25ab8d9b-6f38-4e9a-8736-492e59e2263d appPKG007-Com1-492e59e2263d 0 0 1361166336 175026176 0 0 0 0
0f090e62-57b3-4c82-b75e-0bdfefe8fe98 vedge 3880620 126388 5053624320 3986751488 76 0 0 0
1268c760-0d2f-4433-94ea-9c6f981e7ef2 VM1-9c6f981e7ef2 0 0 1853149184 153837568 0 0 0 0
58338920-bc48-4a8c-8612-381fcca30f0c VM2-381fcca30f0c 0 0 1756024832 169889792 0 0 0 0
aaac72f0-1fe8-4ddd-91c7-0004a02dd887 VM1-0004a02dd887 0 0 1876287488 188162048 20 0 0 0
e450c39e-68bf-4983-b82f-bfa09225025c webserver-cho1-bfa09225025c 1786456 104288 2793398272 529088512 0 0 0 0
1624dcd0-a54b-4971-99bf-4b2fe4509949 appPKG007-Com2-4b2fe4509949 0 0 1324355584 143003648 413 0 0 0
292c7b76-93c4-4cc7-879a-f7c0ba84ad7e mepm 3880652 3759108 5093052416 4260282368 162 0 0 0
aaac72f0-1fe8-4ddd-91c7-0004a02dd887 VM1-0004a02dd887 0 0 1876287488 188162048 24 0 0 0
675ad4b0-4c08-4e27-a841-c5f503f0a006 VM1-c5f503f0a006 0 0 1900519424 169979904 0 0 0 0
e450c39e-68bf-4983-b82f-bfa09225025c webserver-cho1-bfa09225025c 1786456 104288 2793398272 529088512 0 0 0 0
d53899e4-17d1-45c3-8404-ae28f5f7f3a4 server 1015408 185896 73912320 2920448 0 0 0 0
9a5f50a8-f22e-4376-830e-3eb88f6aa19e VM1-3eb88f6aa19e 0 0 1892098048 154271744 0 0 0 0
25ab8d9b-6f38-4e9a-8736-492e59e2263d appPKG007-Com1-492e59e2263d 0 0 1361166336 175026176 0 0 0 0
4b628d5b-212d-4eca-ab61-213715fdf63d oma 1015236 88128 1891819520 181854208 0 0 0 0
1268c760-0d2f-4433-94ea-9c6f981e7ef2 VM1-9c6f981e7ef2 0 0 1853149184 153837568 0 0 0 0
0f090e62-57b3-4c82-b75e-0bdfefe8fe98 vedge 3880620 126388 5053624320 3986751488 24 0 0 0
dc878b79-4dd6-45b9-aef5-002a335ebde1 VM2-002a335ebde1 0 0 1891819520 181854208 0 0 0 0
58338920-bc48-4a8c-8612-381fcca30f0c VM2-381fcca30f0c 0 0 1756024832 169959424 75 0 0 0
e3836de7-85de-469d-b2a2-23c6cdbf43a7 VM1-23c6cdbf43a7 0 0 1892118528 164352000 0 0 0 0
1624dcd0-a54b-4971-99bf-4b2fe4509949 appPKG007-Com2-4b2fe4509949 0 0 1324355584 143003648 229 0 0 0
292c7b76-93c4-4cc7-879a-f7c0ba84ad7e mepm 3880652 3759108 5093052416 4260282368 1096 0 0 0
1268c760-0d2f-4433-94ea-9c6f981e7ef2 VM1-9c6f981e7ef2 0 0 1853149184 153837568 0 0 0 0
58338920-bc48-4a8c-8612-381fcca30f0c VM2-381fcca30f0c 0 0 1756024832 169959424 0 0 0 0
9a5f50a8-f22e-4376-830e-3eb88f6aa19e VM1-3eb88f6aa19e 0 0 1892098048 154271744 0 0 0 0
e450c39e-68bf-4983-b82f-bfa09225025c webserver-cho1-bfa09225025c 1786456 104288 2793398272 529088512 0 0 0 0
1624dcd0-a54b-4971-99bf-4b2fe4509949 appPKG007-Com2-4b2fe4509949 0 0 1324355584 143003648 0 0 0 0
dc878b79-4dd6-45b9-aef5-002a335ebde1 VM2-002a335ebde1 0 0 1891819520 181854208 0 0 0 0
4b628d5b-212d-4eca-ab61-213715fdf63d oma 1015236 88128 1891819520 181854208 0 0 0 0
aaac72f0-1fe8-4ddd-91c7-0004a02dd887 VM1-0004a02dd887 0 0 1876287488 188162048 0 0 0 0
d53899e4-17d1-45c3-8404-ae28f5f7f3a4 server 1015408 185896 73912320 2920448 0 0 0 0
25ab8d9b-6f38-4e9a-8736-492e59e2263d appPKG007-Com1-492e59e2263d 0 0 1361166336 175026176 0 0 0 0
675ad4b0-4c08-4e27-a841-c5f503f0a006 VM1-c5f503f0a006 0 0 1900519424 169979904 0 0 0 0
0f090e62-57b3-4c82-b75e-0bdfefe8fe98 vedge 3880620 126388 5053624320 3986751488 2 0 0 0
e3836de7-85de-469d-b2a2-23c6cdbf43a7 VM1-23c6cdbf43a7 0 0 1892118528 164352000 0 0 0 0
1268c760-0d2f-4433-94ea-9c6f981e7ef2 VM1-9c6f981e7ef2 0 0 1853149184 153837568 0 0 0 0
dc878b79-4dd6-45b9-aef5-002a335ebde1 VM2-002a335ebde1 0 0 1891819520 181854208 0 0 0 0
58338920-bc48-4a8c-8612-381fcca30f0c VM2-381fcca30f0c 0 0 1756024832 169959424 6 0 0 0
25ab8d9b-6f38-4e9a-8736-492e59e2263d appPKG007-Com1-492e59e2263d 0 0 1361166336 175026176 0 0 0 0
e450c39e-68bf-4983-b82f-bfa09225025c webserver-cho1-bfa09225025c 1786456 104288 2793398272 529088512 0 0 0 0
292c7b76-93c4-4cc7-879a-f7c0ba84ad7e mepm 3880652 3759108 5093052416 4260282368 20 0 0 0
0f090e62-57b3-4c82-b75e-0bdfefe8fe98 vedge 3880620 126388 5053624320 3986751488 0 0 0 0
d53899e4-17d1-45c3-8404-ae28f5f7f3a4 server 1015408 185896 73912320 2920448 0 0 0 0
4b628d5b-212d-4eca-ab61-213715fdf63d oma 1015236 88128 1891819520 181854208 0 0 0 0
9a5f50a8-f22e-4376-830e-3eb88f6aa19e VM1-3eb88f6aa19e 0 0 1892098048 154271744 0 0 0 0
e3836de7-85de-469d-b2a2-23c6cdbf43a7 VM1-23c6cdbf43a7 0 0 1892118528 164352000 0 0 0 0
1624dcd0-a54b-4971-99bf-4b2fe4509949 appPKG007-Com2-4b2fe4509949 0 0 1324355584 143003648 8 0 0 0
aaac72f0-1fe8-4ddd-91c7-0004a02dd887 VM1-0004a02dd887 0 0 1876287488 188162048 1 0 0 0
675ad4b0-4c08-4e27-a841-c5f503f0a006 VM1-c5f503f0a006 0 0 1900519424 169979904 0 0 0 0
Integrate output option for metric 2.0 compatible metric output
It would be nice to have like an '--all' parameter passing to kvmtop that gets the following information about the domains:
[
{
"host_name": "host01",
"domains": [
{
"UUID": "321433f-...-3339494d",
"name": "instance-0000001",
"status": "RUNNING",
"networks": [
{
"em1": "192.168.20.1"
}
],
"resources": {
"cpus": 2,
"mem": 12283,
"disk": 4096
},
"statusTime": 15839393482
},
{
...
}
],
"capacity": {
"total": {
"disk": 737181,
"mem": 256839,
"cpus": 8
},
"used": {
"disk": 102344,
"mem": 128934,
"cpus": 6
}
},
"id": "01"
}
]
when I start kvmtop as below, sometimes data is not collected correctly. It show NaN.
If I restart kvmtop, again. It is working fine.
# kvmtop --cpu --mem --disk --printer=text
UUID name ram_total ram_used disk_size_capacity disk_size_allocation cpu_cores cpu_total cpu_steal
d53899e4-17d1-45c3-8404-ae28f5f7f3a4 server 1015408 185688 21474836480 1735135232 1 NaN NaN
aaac72f0-1fe8-4ddd-91c7-0004a02dd887 VM1-0004a02dd887 0 0 10737795072 441962496 1 NaN NaN
1268c760-0d2f-4433-94ea-9c6f981e7ef2 VM1-9c6f981e7ef2 0 0 10737795072 442028032 1 NaN NaN
e3836de7-85de-469d-b2a2-23c6cdbf43a7 VM1-23c6cdbf43a7 0 0 10737795072 441962496 1 NaN NaN
675ad4b0-4c08-4e27-a841-c5f503f0a006 VM1-c5f503f0a006 0 0 10737795072 442028032 1 NaN NaN
e450c39e-68bf-4983-b82f-bfa09225025c webserver-cho1-bfa09225025c 1786456 104288 21475213312 40554496 1 NaN NaN
1624dcd0-a54b-4971-99bf-4b2fe4509949 appPKG007-Com2-4b2fe4509949 0 0 1074118656 59691008 1 NaN NaN
dc878b79-4dd6-45b9-aef5-002a335ebde1 VM2-002a335ebde1 0 0 10737795072 442028032 1 NaN NaN
4b628d5b-212d-4eca-ab61-213715fdf63d oma 1015236 88128 236223201280 226731700224 2 NaN NaN
58338920-bc48-4a8c-8612-381fcca30f0c VM2-381fcca30f0c 0 0 10737795072 442028032 1 NaN NaN
9a5f50a8-f22e-4376-830e-3eb88f6aa19e VM1-3eb88f6aa19e 0 0 10737795072 441962496 1 NaN NaN
292c7b76-93c4-4cc7-879a-f7c0ba84ad7e mepm 3880652 3744316 21474836480 10311180288 4 NaN NaN
25ab8d9b-6f38-4e9a-8736-492e59e2263d appPKG007-Com1-492e59e2263d 0 0 1074118656 59691008 1 NaN NaN
0f090e62-57b3-4c82-b75e-0bdfefe8fe98 vedge 3880620 126388 21474836480 6899896320 4 NaN NaN
aaac72f0-1fe8-4ddd-91c7-0004a02dd887 VM1-0004a02dd887 0 0 10737795072 441962496 1 NaN NaN
d53899e4-17d1-45c3-8404-ae28f5f7f3a4 server 1015408 185688 21474836480 1735135232 1 NaN NaN
4b628d5b-212d-4eca-ab61-213715fdf63d oma 1015236 88128 236223201280 226731700224 2 NaN NaN
675ad4b0-4c08-4e27-a841-c5f503f0a006 VM1-c5f503f0a006 0 0 10737795072 442028032 1 NaN NaN
e450c39e-68bf-4983-b82f-bfa09225025c webserver-cho1-bfa09225025c 1786456 104288 21475213312 40554496 1 NaN NaN
25ab8d9b-6f38-4e9a-8736-492e59e2263d appPKG007-Com1-492e59e2263d 0 0 1074118656 59691008 1 NaN NaN
1268c760-0d2f-4433-94ea-9c6f981e7ef2 VM1-9c6f981e7ef2 0 0 10737795072 442028032 1 NaN NaN
e3836de7-85de-469d-b2a2-23c6cdbf43a7 VM1-23c6cdbf43a7 0 0 10737795072 441962496 1 NaN NaN
dc878b79-4dd6-45b9-aef5-002a335ebde1 VM2-002a335ebde1 0 0 10737795072 442028032 1 NaN NaN
0f090e62-57b3-4c82-b75e-0bdfefe8fe98 vedge 3880620 126388 21474836480 6899896320 4 NaN NaN
9a5f50a8-f22e-4376-830e-3eb88f6aa19e VM1-3eb88f6aa19e 0 0 10737795072 441962496 1 NaN NaN
58338920-bc48-4a8c-8612-381fcca30f0c VM2-381fcca30f0c 0 0 10737795072 442028032 1 NaN NaN
292c7b76-93c4-4cc7-879a-f7c0ba84ad7e mepm 3880652 3744316 21474836480 10311180288 4 NaN NaN
1624dcd0-a54b-4971-99bf-4b2fe4509949 appPKG007-Com2-4b2fe4509949 0 0 1074118656 59691008 1 NaN NaN
9a5f50a8-f22e-4376-830e-3eb88f6aa19e VM1-3eb88f6aa19e 0 0 10737795072 441962496 1 NaN NaN
58338920-bc48-4a8c-8612-381fcca30f0c VM2-381fcca30f0c 0 0 10737795072 442028032 1 NaN NaN
1268c760-0d2f-4433-94ea-9c6f981e7ef2 VM1-9c6f981e7ef2 0 0 10737795072 442028032 1 NaN NaN
1624dcd0-a54b-4971-99bf-4b2fe4509949 appPKG007-Com2-4b2fe4509949 0 0 1074118656 59691008 1 NaN NaN
aaac72f0-1fe8-4ddd-91c7-0004a02dd887 VM1-0004a02dd887 0 0 10737795072 441962496 1 NaN NaN
d53899e4-17d1-45c3-8404-ae28f5f7f3a4 server 1015408 185688 21474836480 1735135232 1 NaN NaN
4b628d5b-212d-4eca-ab61-213715fdf63d oma 1015236 88128 236223201280 226731700224 2 NaN NaN
e450c39e-68bf-4983-b82f-bfa09225025c webserver-cho1-bfa09225025c 1786456 104288 21475213312 40554496 1 NaN NaN
dc878b79-4dd6-45b9-aef5-002a335ebde1 VM2-002a335ebde1 0 0 10737795072 442028032 1 NaN NaN
292c7b76-93c4-4cc7-879a-f7c0ba84ad7e mepm 3880652 3744316 21474836480 10311180288 4 NaN NaN
0f090e62-57b3-4c82-b75e-0bdfefe8fe98 vedge 3880620 126388 21474836480 6899896320 4 NaN NaN
675ad4b0-4c08-4e27-a841-c5f503f0a006 VM1-c5f503f0a006 0 0 10737795072 442028032 1 NaN NaN
25ab8d9b-6f38-4e9a-8736-492e59e2263d appPKG007-Com1-492e59e2263d 0 0 1074118656 59691008 1 NaN NaN
e3836de7-85de-469d-b2a2-23c6cdbf43a7 VM1-23c6cdbf43a7 0 0 10737795072 441962496 1 NaN NaN
is there Plan to add GPU metrics?like intel igd or nvidia T4...
Hi.
I have met one more error as below. with some VM. When I run this VM. kvmtop has downed with below error.
I want to use kvmtop in my kvm resource collector. Would you fix and release new binary ASAP ?
# kvmtop --cpu
cpu
cores
meanfreq panic: runtime error: index out of range
goroutine 18 [running]:
github.com/cha87de/kvmtop/collectors/cpucollector.cpuLookup(0xc4202cbba8, 0x7fe978000b40)
/home/travis/gopath/src/github.com/cha87de/kvmtop/collectors/cpucollector/worker.go:67 +0x6b6
github.com/cha87de/kvmtop/collectors/cpucollector.(*Collector).Lookup.func1(0x8048c0, 0xc420162c20, 0x8682c0, 0xc42008f830, 0x200202a0101)
/home/travis/gopath/src/github.com/cha87de/kvmtop/collectors/cpucollector/collector.go:19 +0x10b
sync.(*Map).Range(0xc92a68, 0x89d9e8)
/home/travis/.gimme/versions/go1.9.linux.amd64/src/sync/map.go:336 +0x150
github.com/cha87de/kvmtop/collectors/cpucollector.(*Collector).Lookup(0xc4200576e0)
/home/travis/gopath/src/github.com/cha87de/kvmtop/collectors/cpucollector/collector.go:15 +0x39
github.com/cha87de/kvmtop/runners.lookup.func2(0x8048c0, 0xc4200576f0, 0x830600, 0xc4200576e0, 0x8048c0)
/home/travis/gopath/src/github.com/cha87de/kvmtop/runners/lookup.go:65 +0x55
sync.(*Map).Range(0xc92a90, 0x89da60)
/home/travis/.gimme/versions/go1.9.linux.amd64/src/sync/map.go:336 +0x150
github.com/cha87de/kvmtop/runners.lookup()
/home/travis/gopath/src/github.com/cha87de/kvmtop/runners/lookup.go:63 +0x363
github.com/cha87de/kvmtop/runners.initializeLookup(0xc4200de000)
/home/travis/gopath/src/github.com/cha87de/kvmtop/runners/lookup.go:21 +0x54
created by github.com/cha87de/kvmtop/runners.InitializeRunners
/home/travis/gopath/src/github.com/cha87de/kvmtop/runners/runners.go:13 +0x6f
<domain type='kvm' id='9'>
<name>oma</name>
<uuid>4b628d5b-212d-4eca-ab61-213715fdf63d</uuid>
<memory unit='KiB'>1048576</memory>
<currentMemory unit='KiB'>1048576</currentMemory>
<vcpu placement='static'>2</vcpu>
<resource>
<partition>/machine</partition>
</resource>
<os>
<type arch='x86_64' machine='pc-i440fx-rhel7.5.0'>hvm</type>
<boot dev='hd'/>
</os>
<features>
<acpi/>
<apic/>
<vmport state='off'/>
</features>
<cpu mode='custom' match='exact' check='full'>
<model fallback='forbid'>IvyBridge-IBRS</model>
<vendor>Intel</vendor>
<feature policy='require' name='ss'/>
<feature policy='require' name='pcid'/>
<feature policy='require' name='hypervisor'/>
<feature policy='require' name='arat'/>
<feature policy='require' name='tsc_adjust'/>
<feature policy='require' name='stibp'/>
<feature policy='require' name='ssbd'/>
<feature policy='require' name='xsaveopt'/>
<feature policy='require' name='pdpe1gb'/>
</cpu>
<clock offset='utc'>
<timer name='rtc' tickpolicy='catchup'/>
<timer name='pit' tickpolicy='delay'/>
<timer name='hpet' present='no'/>
</clock>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>destroy</on_crash>
<pm>
<suspend-to-mem enabled='no'/>
<suspend-to-disk enabled='no'/>
</pm>
<devices>
<emulator>/usr/libexec/qemu-kvm</emulator>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/var/lib/libvirt/images/oma.qcow2'/>
<backingStore/>
<target dev='vda' bus='virtio'/>
<alias name='virtio-disk0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/>
</disk>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/var/lib/libvirt/images/oma-catalog.qcow2'/>
<backingStore/>
<target dev='vdb' bus='virtio'/>
<alias name='virtio-disk1'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x09' function='0x0'/>
</disk>
<controller type='usb' index='0' model='ich9-ehci1'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x7'/>
</controller>
<controller type='usb' index='0' model='ich9-uhci1'>
<alias name='usb'/>
<master startport='0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0' multifunction='on'/>
</controller>
<controller type='usb' index='0' model='ich9-uhci2'>
<alias name='usb'/>
<master startport='2'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x1'/>
</controller>
<controller type='usb' index='0' model='ich9-uhci3'>
<alias name='usb'/>
<master startport='4'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x2'/>
</controller>
<controller type='pci' index='0' model='pci-root'>
<alias name='pci.0'/>
</controller>
<controller type='virtio-serial' index='0'>
<alias name='virtio-serial0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
</controller>
<interface type='network'>
<mac address='52:54:00:f3:5d:80'/>
<source network='default' bridge='virbr0'/>
<target dev='vnet16'/>
<model type='virtio'/>
<alias name='net0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
<serial type='pty'>
<source path='/dev/pts/9'/>
<target type='isa-serial' port='0'>
<model name='isa-serial'/>
</target>
<alias name='serial0'/>
</serial>
<console type='pty' tty='/dev/pts/9'>
<source path='/dev/pts/9'/>
<target type='serial' port='0'/>
<alias name='serial0'/>
</console>
<channel type='unix'>
<source mode='bind' path='/var/lib/libvirt/qemu/channel/target/domain-9-oma/org.qemu.guest_agent.0'/>
<target type='virtio' name='org.qemu.guest_agent.0' state='connected'/>
<alias name='channel0'/>
<address type='virtio-serial' controller='0' bus='0' port='1'/>
</channel>
<channel type='spicevmc'>
<target type='virtio' name='com.redhat.spice.0' state='disconnected'/>
<alias name='channel1'/>
<address type='virtio-serial' controller='0' bus='0' port='2'/>
</channel>
<input type='tablet' bus='usb'>
<alias name='input0'/>
<address type='usb' bus='0' port='1'/>
</input>
<input type='mouse' bus='ps2'>
<alias name='input1'/>
</input>
<input type='keyboard' bus='ps2'>
<alias name='input2'/>
</input>
<graphics type='spice' port='5907' autoport='yes' listen='127.0.0.1'>
<listen type='address' address='127.0.0.1'/>
</graphics>
<sound model='ich6'>
<alias name='sound0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
</sound>
<video>
<model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1' primary='yes'/>
<alias name='video0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
</video>
<redirdev bus='usb' type='spicevmc'>
<alias name='redir0'/>
<address type='usb' bus='0' port='2'/>
</redirdev>
<redirdev bus='usb' type='spicevmc'>
<alias name='redir1'/>
<address type='usb' bus='0' port='3'/>
</redirdev>
<memballoon model='virtio'>
<alias name='balloon0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/>
</memballoon>
</devices>
<seclabel type='dynamic' model='dac' relabel='yes'>
<label>+107:+107</label>
<imagelabel>+107:+107</imagelabel>
</seclabel>
</domain>
Flag output unknown in kvmtop version 2.0.1
kvmtop --cpu --printer = json --output = tcp --target = 127.0.0.1: 12345
unknown flag `output '
Am I doing something wrong?
For future container integration, the memory stats should be read from the /proc filesystem like for CPU utilisation.
Hi.
I set new machine in lab env. There are no active VM in KVM. At that time ram information for Host is not collected.
$ kvmtop --cpu --mem --printer=json
{ "host": {"ram_Total": "","ram_Free": "","ram_Available": "","cpu_cores": 10,"cpu_curfreq": 0.000000}, "domains": []}
{ "host": {"ram_Total": "","ram_Free": "","ram_Available": "","cpu_cores": 10,"cpu_curfreq": 0.000000}, "domains": []}
{ "host": {"ram_Total": "","ram_Free": "","ram_Available": "","cpu_cores": 10,"cpu_curfreq": 0.000000}, "domains": []}
{ "host": {"ram_Total": "","ram_Free": "","ram_Available": "","cpu_cores": 10,"cpu_curfreq": 0.000000}, "domains": []}
{ "host": {"ram_Total": "","ram_Free": "","ram_Available": "","cpu_cores": 10,"cpu_curfreq": 0.000000}, "domains": []}
{ "host": {"ram_Total": "","ram_Free": "","ram_Available": "","cpu_cores": 10,"cpu_curfreq": 0.000000}, "domains": []}
{ "host": {"ram_Total": "","ram_Free": "","ram_Available": "","cpu_cores": 10,"cpu_curfreq": 0.000000}, "domains": []}
If I check with virsh command, result is as below.
total : 197639624 KiB
free : 124508044 KiB
buffers: 2136 KiB
cached : 53727560 KiB
kvmtop output set to TCP(to logstash), when I restart logstash, kvmtop is lost tcp connection and terminate process. It would be good to retry TCP connection when logstash is alive.
When kvmtop is working on system service, TCP connection retry shall be required.
original issue from @analistamarcioprado in #14
Only from the 3 query does the cpu_total appear.
I am using the version: 2.0.1
#kvmtop --cpu --printer=json -r1
[]
[{"UUID": "ad3dfd25-a429-4e9a-80a7-c8d88169ca47","name": "Windows7","cpu_cores": "1","cpu_total": "","cpu_steal": "","cpu_other_total": "","cpu_other_steal": "",},]
#kvmtop --cpu --printer=json -r3
[]
[{"UUID": "ad3dfd25-a429-4e9a-80a7-c8d88169ca47","name": "Windows7","cpu_cores": "1","cpu_total": "","cpu_steal": "","cpu_other_total": "","cpu_other_steal": "",},]
[{"UUID": "ad3dfd25-a429-4e9a-80a7-c8d88169ca47","name": "Windows7","cpu_cores": "1","cpu_total": "","cpu_steal": "","cpu_other_total": "","cpu_other_steal": "",},]
[{"UUID": "ad3dfd25-a429-4e9a-80a7-c8d88169ca47","name": "Windows7","cpu_cores": "1","cpu_total": "1","cpu_steal": "0","cpu_other_total": "3","cpu_other_steal": "0",},]
kvmtop_2.1.2_linux_amd64.deb (with 1 VM running using kvmtop --cpu --printer=json
) erroneously returns:
{ "host": {"cpu_cores": 10,"cpu_curfreq": 2153.284888}, "domains": [{"UUID": "ea9e09b7-540a-45e7-9276-0429b6a429e6","name": "debian8","cpu_cores": 2,"cpu_total": 0,"cpu_steal": 0}]}
kvmtop container (either latest or master) correctly returns:
{ "host": {"cpu_cores": 32,"cpu_curfreq": 2328.310028}, "domains": [{"UUID": "ea9e09b7-540a-45e7-9276-0429b6a429e6","name": "debian8","cpu_cores": 2,"cpu_total": 0,"cpu_steal": 0}]}
The host DOES have 32 cores not 10.
I have not been able to build your source code to debug but from the code it looks like parsing /proc/cpuinfo is somehow failing
Hi.
Host OS : CentOS 7.3
When I add metric collector "--disk", It has shown below error.
Without "--disk" option, It is working fine.
$ kvmtop -c qemu:///system --printer json --cpu --mem --disk --net -f 1 --output=tcp --target=127.0.0.1:8343
Output will be redirected to tcp://127.0.0.1:8343
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x723601]
goroutine 18 [running]:
github.com/cha87de/kvmtop/collectors/diskcollector.diskLookup(0xc42023bb10, 0x7efc20000b20)
/home/travis/gopath/src/github.com/cha87de/kvmtop/collectors/diskcollector/worker.go:112 +0x311
github.com/cha87de/kvmtop/collectors/diskcollector.(*Collector).Lookup.func1(0x8048c0, 0xc42014c540, 0x8682c0, 0xc420075770, 0x24)
/home/travis/gopath/src/github.com/cha87de/kvmtop/collectors/diskcollector/collector.go:25 +0x11d
sync.(*Map).Range(0xc92a68, 0xc42023bcc0)
/home/travis/.gimme/versions/go1.9.linux.amd64/src/sync/map.go:336 +0x150
github.com/cha87de/kvmtop/collectors/diskcollector.(*Collector).Lookup(0xc42003f780)
/home/travis/gopath/src/github.com/cha87de/kvmtop/collectors/diskcollector/collector.go:20 +0x71
github.com/cha87de/kvmtop/runners.lookup.func2(0x8048c0, 0xc42003f790, 0x830680, 0xc42003f780, 0x804801)
/home/travis/gopath/src/github.com/cha87de/kvmtop/runners/lookup.go:65 +0x55
sync.(*Map).Range(0xc92a90, 0x89da60)
/home/travis/.gimme/versions/go1.9.linux.amd64/src/sync/map.go:336 +0x150
github.com/cha87de/kvmtop/runners.lookup()
/home/travis/gopath/src/github.com/cha87de/kvmtop/runners/lookup.go:63 +0x363
github.com/cha87de/kvmtop/runners.initializeLookup(0xc4200d0000)
/home/travis/gopath/src/github.com/cha87de/kvmtop/runners/lookup.go:21 +0x54
created by github.com/cha87de/kvmtop/runners.InitializeRunners
/home/travis/gopath/src/github.com/cha87de/kvmtop/runners/runners.go:13 +0x6f
Hi.
I install kvmtop rpm on my host.
When I execute it has shown error, It doesn't work properly.
$ kvmtop
panic: runtime error: index out of range
goroutine 9 [running]:
github.com/cha87de/kvmtop/printers.sortDomainIDsByField(0xc4201e0000, 0x3, 0x0, 0x0, 0x1)
/home/travis/gopath/src/github.com/cha87de/kvmtop/printers/ncurses.go:185 +0x2cd
github.com/cha87de/kvmtop/printers.printDomain(0xc4201e6010, 0xc4201de000, 0x2, 0x2, 0xc4201e0000, 0x3)
/home/travis/gopath/src/github.com/cha87de/kvmtop/printers/ncurses.go:161 +0x597
github.com/cha87de/kvmtop/printers.(*NcursesPrinter).Screen(0xc4200116c0, 0x0, 0x0, 0x0, 0xc4201de000, 0x2, 0x2, 0x0, 0x0, 0x0, ...)
/home/travis/gopath/src/github.com/cha87de/kvmtop/printers/ncurses.go:61 +0x17c
github.com/cha87de/kvmtop/runners.handleRun()
/home/travis/gopath/src/github.com/cha87de/kvmtop/runners/printer.go:74 +0x869
github.com/cha87de/kvmtop/runners.initializePrinter(0xc420015cd0)
/home/travis/gopath/src/github.com/cha87de/kvmtop/runners/printer.go:27 +0x88
created by github.com/cha87de/kvmtop/runners.InitializeRunners
/home/travis/gopath/src/github.com/cha87de/kvmtop/runners/runners.go:15 +0xb3
I installed the kvmtop 2.1.3 rpm on a CentOS 7, and when I run kvmtop the memory used and memory total of domains is showed with "0"
See PrtScr:
http://prntscr.com/qbkubi
Provide packages for at least Ubuntu Centos
Thanks for quick fix.
I apply latest rpm file(kvmtop_2.1.1_linux_amd64.rpm) on my system. There is new issue for json printer. Some of value is not generated as blow.(hostname is missing in host)
Also I hope to add CPU utilization for HOST, if possible.
{
"host": {
"ram_Total": 8081032,
"ram_Free": 177356,
"ram_Available": 243624,
"disk_device_reads": 10,
"disk_device_writes": 0,
"net_host_receivedBytes": 0,
"net_host_transmittedBytes": 0,
"net_host_speed": 0,
"cpu_cores": 4,
"cpu_curfreq": 0.000000
},
"domains": [{
"UUID": "4b7814f2-59fd-4b73-838c-4cb150cbae18",
"name": "oma",
"ram_total": 1015504,
"ram_used": 72012,
"disk_size_capacity": 21474836480,
"disk_size_allocation": 20541877760,
"net_receivedBytes": 0,
"net_transmittedBytes": 0,
"cpu_cores": 1,
"cpu_total": 0,
"cpu_steal": 0
}, {
"UUID": "42de0be1-e95c-44db-9cc3-ca4820c5a875",
"name": "servicerepository",
"ram_total": 2952772,
"ram_used": 150812,
"disk_size_capacity": 21474836480,
"disk_size_allocation": 3487038976,
"net_receivedBytes": 0,
"net_transmittedBytes": 52,
"cpu_cores": 2,
"cpu_total": 1,
"cpu_steal": 0
}, {
"UUID": "eb40b9d1-87e6-455d-a6b4-b27229c9652c",
"name": "mepm",
"ram_total": 2952772,
"ram_used": 135544,
"disk_size_capacity": 21474836480,
"disk_size_allocation": 3572104704,
"net_receivedBytes": 0,
"net_transmittedBytes": 52,
"cpu_cores": 2,
"cpu_total": 50,
"cpu_steal": 0
}, {
"UUID": "914469ff-15c4-486c-83ac-c20f04f731b1",
"name": "openapigw",
"ram_total": 2952772,
"ram_used": 138780,
"disk_size_capacity": 21474836480,
"disk_size_allocation": 4460314112,
"net_receivedBytes": 0,
"net_transmittedBytes": 52,
"cpu_cores": 2,
"cpu_total": 1,
"cpu_steal": 0
}
]
}
Hi.
I reinstall kvmtop latest release(2.1.3) in my system.
Total number of CPU is fixed.
But, There are issue usage of CPU usage of VM is not collect.
As you see below, VM name "vedge" is shown "52%" CPU usage.
So, I checked with top after login vedge VM. CPU usage is less than 1%.
cpu ram
cores 88 Total 19763962
curfreq 0.000000 Free 2562432
Availabl 11867460
cpu ram
UUID name cores total steal total used
256fc986 vedge 4 52 0 3880072 2278276
f62468f4 pike-osc 4 12 0 8173704 7493712
=====================================================
top - 02:54:01 up 14 days, 5:45, 2 users, load average: 0.01, 0.03, 0.05
Tasks: 141 total, 2 running, 139 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.1 us, 0.1 sy, 0.0 ni, 99.2 id, 0.0 wa, 0.0 hi, 0.0 si, 0.6 st
KiB Mem : 3880072 total, 1599800 free, 1643624 used, 636648 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 1960016 avail Mem
Hi.
My Server has 2 cpu socket and it enabled hyper thread. So, If I see /proc/cpuinfo 88 core is listed.
But kvmtop only show 10 cpu. So, It make cpu utilization as wrong.
Some of VM has shown 100 as total. If I login into VM, and check with top command it shown under 5% utilization.
I think, CPU utilization of VM is depends on number of total cpu counts.
cpu
cores 10
curfreq 0.000000
cpu
UUID name cores total steal
0fe678e6 ServiceV 1 99 0
ba053343 vnfm 2 50 0
e35a7be7 udsf-vm 2 50 0
a8c1e3b8 ubuntu16 4 26 0
a8d6924c streamer 8 2 0
bc3e0e69 win10-st 8 13 0
5ed8416c MECVIDEO 1 100 0
4973ae1d QA-appPK 1 1 0
882e9fa7 titan-li 8 1 0
a7de3a43 titan-li 8 1 0
a98df57b QA-appPK 1 1 0
6b180f44 QATEST1- 1 0 0
95680053 appPKG00 1 0 0
0cd96e6b appPKG00 1 0 0
a762ee31 QATEST1- 1 0 0
9b59a6eb centos7. 2 0 0
I checked with virt-top
virt-top 21:56:23 - x86_64 88/88CPU 2100MHz 196275MB 9.6% 9.5% 9.5%
20 domains, 16 active, 16 running, 0 sleeping, 0 paused, 4 inactive D:0 O:0 X:0
CPU: 9.5% Mem: 53722 MB (53722 MB by guests)
ID S RDRQ WRRQ RXBY TXBY %CPU %MEM TIME NAME
4 R 0 0 12M 0 1.5 4.0 187:05:23 win10-streamer-test
3 R 0 0 2M 0 1.3 2.0 106:52:17 ubuntu16.04-test
2 R 0 0 2M 0 1.2 1.0 86:29:56 vnfm
48 R 0 1 2M 0 1.2 0.0 47:31.80 ServiceVM-9215cf460d08
8 R 0 1 2M 0 1.2 1.0 88:11:58 udsf-vm
47 R 0 0 2M 0 1.2 0.0 50:29:37 MECVIDEOVM-d542a9c58db6
7 R 0 2 12M 0 0.7 4.0 97:45:06 titan-live-org
1 R 0 0 12M 360 0.6 4.0 129:53:33 streamer-win10-20G
6 R 0 0 12M 0 0.6 4.0 96:17:14 titan-live--clone
16 R 0 0 0 0 0.0 0.0 227:06.60 QA-appPKG000-1-f3687bfdb28b
30 R 0 0 0 0 0.0 0.0 88:15.50 appPKG005-Com2-ea67d0ade870
15 R 0 0 0 0 0.0 0.0 208:36.58 QA-appPKG000-3-95ec09566f2d
36 R 0 0 0 0 0.0 0.0 52:25.82 QATEST1-Com11-9f5e6eb9287d
37 R 0 0 0 0 0.0 0.0 51:54.29 QATEST1-Com21-ae22739a4631
29 R 0 0 0 0 0.0 0.0 90:04.44 appPKG005-Com11-73190ab88e26
41 R 0 0 0 0 0.0 1.0 4:54.77 centos7.0
Using version 2.0.1
kvmtop --cpu --printer=json -r1
generates a json string with commas at the end of each object/array
[{"UUID": "655a9721-93c0-4d12-9c25-02de775ac863","name": "test","cpu_cores": "4","cpu_total": "","cpu_steal": "","cpu_other_total": "","cpu_other_steal": "",},]
When libvirt runs e.g. inside a container, the process IDs for VM cores are different. Libvirt when returns the PIDs from inside the container when running the info cpus
command via QemuMonitorCommand
.
Solution: classify VM's tasks as CPU cores or other task from the /proc filesystem instead.
I using Kvmtop to monitor cpu steal time. But i'm using an VM have been virtualized and i installed openstack on this VM. When i use kvmtop, cpu core and cpu steal time = 0.
When running kvmtop I see the following line in the syslog messages:
error : virNetSocketReadWire:1806 : End of file while reading data: Input/output error
The results are shown but it's spamming our syslog.
It's only when ending the kvmtop session but we run it once per minute (with the option -r1) to collect data and put it in colelctd.
[~]# kvmtop --version
kvmtop version 2.1.3
while trying to build for cross-platform I'm getting the following error msg:
$ GO111MODULE=on GOOS=linux GOARCH=amd64 go build
../../connector/libvirt.go:12:17: undefined: libvirt.Connect
../../connector/libvirt.go:17:15: undefined: libvirt.NewConnect
../../models/libvirtDomains.go:15:62: undefined: libvirt.Domain
../../models/libvirtDomains.go:18:10: undefined: libvirt.Domain
../../models/libvirtDomains.go:20:21: undefined: libvirt.Domain
../../models/libvirtDomains.go:25:63: undefined: libvirt.Domain
any ideas?
Hi.
Thanks for quick fix and release.
kvmtop is good solution for me. It is very helpful.
I want to ask enhancement of several feature for "--host", If possible.
Would U enhance below feature of package( at least 3 ) ?
We are running kvmtop as a service on our hypervisor. We gather the metrics and send them to prometheus. We noticed that when a new VM is added to the hypervisor this VM is not added to the metrics. It looks like kvmtop is not updating the list of VMs reguallary.
We run kvmtop as follow:
/usr/bin/kvmtop --disk --io --net --host --cpu --mem --verbose -p json -o file --target=////kvmtop.json --targettruncate -f 10
The --targettruncate is added in the code and a PR is open for that one.
The OS of the hypervisor is CentOS Linux release 7.9.2009 (Core)
The QEMU version is from the ovirt repo: qemu-kvm 2.12.0-44.1
The libvirt version is version 4.5.0-36
# ./kvmtop -batch
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xb code=0x1 addr=0x0 pc=0x4c1eb9]
goroutine 1 [running]:
github.com/rthornton128/goncurses.(*Window).MovePrintf(0x0, 0x1, 0x0, 0x572a20, 0x2, 0xc82006d928, 0x1, 0x1)
/home/travis/gopath/src/github.com/rthornton128/goncurses/window.go:413 +0xa9
github.com/rthornton128/goncurses.(*Window).MovePrint(0x0, 0x1, 0x0, 0xc82006da70, 0x1, 0x1)
/home/travis/gopath/src/github.com/rthornton128/goncurses/window.go:404 +0x140
main.updateVirtualMachineLists()
/home/travis/gopath/src/github.com/cha87de/kvmtop/kvmtop.go:58 +0x353
main.initialize()
/home/travis/gopath/src/github.com/cha87de/kvmtop/kvmtop.go:238 +0x6aa
main.main()
/home/travis/gopath/src/github.com/cha87de/kvmtop/kvmtop.go:257 +0x333
goroutine 17 [syscall, locked to thread]:
runtime.goexit()
/usr/local/go/src/runtime/asm_amd64.s:1696 +0x1
goroutine 5 [syscall]:
os/signal.loop()
/usr/local/go/src/os/signal/signal_unix.go:22 +0x18
created by os/signal.init.1
/usr/local/go/src/os/signal/signal_unix.go:28 +0x37
goroutine 6 [select, locked to thread]:
runtime.gopark(0x5b7730, 0xc82004a728, 0x5752c0, 0x6, 0x439018, 0x2)
/usr/local/go/src/runtime/proc.go:185 +0x163
runtime.selectgoImpl(0xc82004a728, 0x0, 0x18)
/usr/local/go/src/runtime/select.go:392 +0xa64
runtime.selectgo(0xc82004a728)
/usr/local/go/src/runtime/select.go:212 +0x12
runtime.ensureSigM.func1()
/usr/local/go/src/runtime/signal1_unix.go:227 +0x353
runtime.goexit()
/usr/local/go/src/runtime/asm_amd64.s:1696 +0x1
goroutine 7 [chan receive]:
main.initialize.func1(0xc820016120)
/home/travis/gopath/src/github.com/cha87de/kvmtop/kvmtop.go:198 +0x36
created by main.initialize
/home/travis/gopath/src/github.com/cha87de/kvmtop/kvmtop.go:200 +0x1ea
Consider threads for VMs for i/o and emulation. Threads are childs of VMs' main process, but not listed in info cpus
on qemu hmp monitor.
build and upload container image to hub.docker.com
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.