{"id":40955723,"url":"https://github.com/akam1o/stealchecker","last_synced_at":"2026-01-22T05:36:38.816Z","repository":{"id":37462333,"uuid":"213208982","full_name":"akam1o/stealchecker","owner":"akam1o","description":"Checking CPU steal of VM from the virtual host","archived":false,"fork":false,"pushed_at":"2025-05-24T06:32:07.000Z","size":32,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-11-28T00:43:33.524Z","etag":null,"topics":["checker","cpu-steal","kvm","kvm-hypervisor","qemu","virtualhost"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/stealchecker/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/akam1o.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-10-06T17:05:18.000Z","updated_at":"2025-10-01T07:52:48.000Z","dependencies_parsed_at":"2022-09-04T22:10:08.640Z","dependency_job_id":null,"html_url":"https://github.com/akam1o/stealchecker","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/akam1o/stealchecker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akam1o%2Fstealchecker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akam1o%2Fstealchecker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akam1o%2Fstealchecker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akam1o%2Fstealchecker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/akam1o","download_url":"https://codeload.github.com/akam1o/stealchecker/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akam1o%2Fstealchecker/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28656383,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-22T01:17:37.254Z","status":"online","status_checked_at":"2026-01-22T02:00:07.137Z","response_time":144,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["checker","cpu-steal","kvm","kvm-hypervisor","qemu","virtualhost"],"created_at":"2026-01-22T05:36:38.262Z","updated_at":"2026-01-22T05:36:38.806Z","avatar_url":"https://github.com/akam1o.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# stealchecker\n\nChecking CPU steal of VM from the virtual host\n\n## About stealchecker\n\nCPU steal time is time stolen from VM by the virtual host. This can be seen with commands such as top and vmstat from VM. But the virtual host cannot see it.\n\nStealchecker calculates the CPU steal of VM from the virtual host.\n\n\nThe principle is as follows:\n\n1. Collect VM info with the virsh command\n2. Collect runqueue wait times from schedstat of vcpu processes\n3. Calculate CPU steal from the sum of the runqueue wait times per unit time\n\n## Requirements\n\n- Can use the virsh command\n\n## How to install\n\n```\n$ pip install stealchecker\n```\n\n## Usage\n\n*CPU steal is not calculated on the first run\n\n```\n$ sudo stealchecker check\nDomain ID                       %cpu_use      %cpu_steal\ninstance-00000001                 48.68%           0.78%\ninstance-00000002                  0.60%           0.02%\ninstance-00000003                  2.63%           0.23%\ninstance-00000004                  6.11%           0.86%\ninstance-00000005                  1.77%           0.10%\ninstance-00000006                  3.57%           0.07%\ninstance-00000007                  0.38%           0.01%\ninstance-00000008                 33.13%           0.88%\ninstance-00000009                 17.52%           0.05%\ninstance-0000000a                 26.37%           0.53%\n```\n\nDisplay with domain UUID\n\n```\n$sudo stealchecker check --uuid\nDomain UUID                                     %cpu_use      %cpu_steal\n2ab6a587-a844-4377-b7e2-a9380db6e167              41.09%           0.67%\n04170a61-4289-4f77-9b3d-b8b1b366afe3               0.35%           0.02%\na53e6892-94cf-494d-9b68-bc97842f618f               2.99%           0.19%\n5cf50394-eefd-4f9b-bf02-2c764fa4bdd7               6.32%           0.47%\nd506ca79-8014-423d-b9bd-62f8e1dc63c0               1.74%           0.09%\n3bd0f56e-6efb-4dd1-aadd-0d03a84020b9               3.04%           0.11%\n4ff26ab3-de16-4564-ba58-9e4fdb364272               0.76%           0.05%\n09c135aa-679c-44a5-aead-14444eb8088c              33.09%           1.04%\n2a50a61e-4179-4b71-a26f-61901cf23cd1               0.98%           0.02%\n1df6befa-af2a-4534-938b-44c933d2b3b6              26.57%           0.61%\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fakam1o%2Fstealchecker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fakam1o%2Fstealchecker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fakam1o%2Fstealchecker/lists"}