{"id":13604461,"url":"https://github.com/Tinkoff/libvirt-exporter","last_synced_at":"2025-04-12T02:30:38.237Z","repository":{"id":37471392,"uuid":"201278624","full_name":"Tinkoff/libvirt-exporter","owner":"Tinkoff","description":"Prometheus metrics exporter for libvirt.","archived":true,"fork":false,"pushed_at":"2023-03-14T11:20:20.000Z","size":799,"stargazers_count":108,"open_issues_count":11,"forks_count":45,"subscribers_count":13,"default_branch":"master","last_synced_at":"2024-11-07T09:42:41.915Z","etag":null,"topics":["libvirt","prometheus-exporter"],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Tinkoff.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2019-08-08T14:46:03.000Z","updated_at":"2024-11-04T02:09:29.000Z","dependencies_parsed_at":"2024-01-16T23:47:14.769Z","dependency_job_id":null,"html_url":"https://github.com/Tinkoff/libvirt-exporter","commit_stats":null,"previous_names":["alexzzz/libvirt-exporter"],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tinkoff%2Flibvirt-exporter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tinkoff%2Flibvirt-exporter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tinkoff%2Flibvirt-exporter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tinkoff%2Flibvirt-exporter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Tinkoff","download_url":"https://codeload.github.com/Tinkoff/libvirt-exporter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248506901,"owners_count":21115503,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["libvirt","prometheus-exporter"],"created_at":"2024-08-01T19:00:46.127Z","updated_at":"2025-04-12T02:30:37.823Z","avatar_url":"https://github.com/Tinkoff.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"# Prometheus libvirt exporter\n\nDocker image is available at [dockerhub](https://hub.docker.com/r/alekseizakharov/libvirt-exporter).\n\n - `Dockerfile` - creates a docker container with dynamically linked libvirt-exporter. Make an image and run with `docker container run -p9177:9177 -v /var/run/libvirt:/var/run/libvirt yourcontainername`. Based on the latest golang:alpine.\n - `build-with` - builds dynamically linked libvirt-exporter in the container based on Dockerfile specified as an argument. Ex.: `build-with ./build_container/Dockerfile.ubuntu2004` will build libvirt-exporter for Ubuntu 20.04.\n\n# Metrics\nThe following metrics/labels are being exported:\n\n```\nlibvirt_domain_block_meta{bus=\"scsi\",cache=\"none\",discard=\"unmap\",disk_type=\"network\",domain=\"instance-00000337\",driver_type=\"raw\",serial=\"5f1a922c-e4b5-4020-9308-d70fd8219ac8\",source_file=\"somepool/volume-5f1a922c-e4b5-4020-9308-d70fd8219ac8\",target_device=\"sda\"} 1\nlibvirt_domain_block_stats_allocation{domain=\"instance-00000337\",target_device=\"sda\"} 2.1474816e+10\nlibvirt_domain_block_stats_capacity_bytes{domain=\"instance-00000337\",target_device=\"sda\"} 2.147483648e+10\nlibvirt_domain_block_stats_flush_requests_total{domain=\"instance-00000337\",target_device=\"sda\"} 5.153142e+06\nlibvirt_domain_block_stats_flush_time_seconds_total{domain=\"instance-00000337\",target_device=\"sda\"} 473.56850521\nlibvirt_domain_block_stats_limit_burst_length_read_requests_seconds{domain=\"instance-00000337\",target_device=\"sda\"} 0\nlibvirt_domain_block_stats_limit_burst_length_total_requests_seconds{domain=\"instance-00000337\",target_device=\"sda\"} 0\nlibvirt_domain_block_stats_limit_burst_length_write_requests_seconds{domain=\"instance-00000337\",target_device=\"sda\"} 0\nlibvirt_domain_block_stats_limit_burst_read_bytes{domain=\"instance-00000337\",target_device=\"sda\"} 0\nlibvirt_domain_block_stats_limit_burst_read_bytes_length_seconds{domain=\"instance-00000337\",target_device=\"sda\"} 0\nlibvirt_domain_block_stats_limit_burst_read_requests{domain=\"instance-00000337\",target_device=\"sda\"} 0\nlibvirt_domain_block_stats_limit_burst_total_bytes{domain=\"instance-00000337\",target_device=\"sda\"} 0\nlibvirt_domain_block_stats_limit_burst_total_bytes_length_seconds{domain=\"instance-00000337\",target_device=\"sda\"} 0\nlibvirt_domain_block_stats_limit_burst_total_requests{domain=\"instance-00000337\",target_device=\"sda\"} 0\nlibvirt_domain_block_stats_limit_burst_write_bytes{domain=\"instance-00000337\",target_device=\"sda\"} 0\nlibvirt_domain_block_stats_limit_burst_write_bytes_length_seconds{domain=\"instance-00000337\",target_device=\"sda\"} 0\nlibvirt_domain_block_stats_limit_burst_write_requests{domain=\"instance-00000337\",target_device=\"sda\"} 0\nlibvirt_domain_block_stats_limit_read_bytes{domain=\"instance-00000337\",target_device=\"sda\"} 0\nlibvirt_domain_block_stats_limit_read_requests{domain=\"instance-00000337\",target_device=\"sda\"} 640\nlibvirt_domain_block_stats_limit_total_bytes{domain=\"instance-00000337\",target_device=\"sda\"} 1.572864e+08\nlibvirt_domain_block_stats_limit_total_requests{domain=\"instance-00000337\",target_device=\"sda\"} 0\nlibvirt_domain_block_stats_limit_write_bytes{domain=\"instance-00000337\",target_device=\"sda\"} 0\nlibvirt_domain_block_stats_limit_write_requests{domain=\"instance-00000337\",target_device=\"sda\"} 320\nlibvirt_domain_block_stats_physicalsize_bytes{domain=\"instance-00000337\",target_device=\"sda\"} 2.147483648e+10\nlibvirt_domain_block_stats_read_bytes_total{domain=\"instance-00000337\",target_device=\"sda\"} 1.7704034304e+11\nlibvirt_domain_block_stats_read_requests_total{domain=\"instance-00000337\",target_device=\"sda\"} 1.9613982e+07\nlibvirt_domain_block_stats_read_time_seconds_total{domain=\"instance-00000337\",target_device=\"sda\"} 161803.085086353\nlibvirt_domain_block_stats_size_iops_bytes{domain=\"instance-00000337\",target_device=\"sda\"} 0\nlibvirt_domain_block_stats_write_bytes_total{domain=\"instance-00000337\",target_device=\"sda\"} 9.2141217792e+11\nlibvirt_domain_block_stats_write_requests_total{domain=\"instance-00000337\",target_device=\"sda\"} 2.8434899e+07\nlibvirt_domain_block_stats_write_time_seconds_total{domain=\"instance-00000337\",target_device=\"sda\"} 530522.437009019\n\nlibvirt_pool_info_allocation_bytes{pool=\"default\"} 5.4276182016e+10\nlibvirt_pool_info_available_bytes{pool=\"default\"} 5.1278647296e+10\nlibvirt_pool_info_capacity_bytes{pool=\"default\"} 1.05554829312e+11\n\nlibvirt_domain_info_cpu_time_seconds_total{domain=\"instance-00000337\"} 949422.12\nlibvirt_domain_info_maximum_memory_bytes{domain=\"instance-00000337\"} 8.589934592e+09\nlibvirt_domain_info_memory_usage_bytes{domain=\"instance-00000337\"} 8.589934592e+09\nlibvirt_domain_info_meta{domain=\"instance-00000337\",flavor=\"someflavor-8192\",instance_name=\"name.of.instance.com\",project_name=\"instance.com\",project_uuid=\"3051f6f46d394ab98f55a0670ae5c70b\",root_type=\"image\",root_uuid=\"155e5ab9-d28c-48f2-bd8d-f193d0a6128a\",user_name=\"master_admin\",user_uuid=\"240270fa2a3e4fd3baa6d6e776669b19\",uuid=\"1bac351f-242e-4d53-8cf3-fd91b061069c\"} 1\nlibvirt_domain_info_virtual_cpus{domain=\"instance-00000337\"} 2\nlibvirt_domain_info_vstate{domain=\"instance-00000337\"} 1\n\nlibvirt_domain_interface_meta{domain=\"instance-00000337\",source_bridge=\"br-int\",target_device=\"tapa7e2fe95-a7\",virtual_interface=\"a7e2fe95-a7cf-4bec-8180-d835cf342d72\"} 1\nlibvirt_domain_interface_stats_receive_bytes_total{domain=\"instance-00000337\",target_device=\"tapa7e2fe95-a7\"} 7.9182281e+09\nlibvirt_domain_interface_stats_receive_drops_total{domain=\"instance-00000337\",target_device=\"tapa7e2fe95-a7\"} 0\nlibvirt_domain_interface_stats_receive_errors_total{domain=\"instance-00000337\",target_device=\"tapa7e2fe95-a7\"} 0\nlibvirt_domain_interface_stats_receive_packets_total{domain=\"instance-00000337\",target_device=\"tapa7e2fe95-a7\"} 4.378193e+06\nlibvirt_domain_interface_stats_transmit_bytes_total{domain=\"instance-00000337\",target_device=\"tapa7e2fe95-a7\"} 1.819996331e+09\nlibvirt_domain_interface_stats_transmit_drops_total{domain=\"instance-00000337\",target_device=\"tapa7e2fe95-a7\"} 0\nlibvirt_domain_interface_stats_transmit_errors_total{domain=\"instance-00000337\",target_device=\"tapa7e2fe95-a7\"} 0\nlibvirt_domain_interface_stats_transmit_packets_total{domain=\"instance-00000337\",target_device=\"tapa7e2fe95-a7\"} 2.275386e+06\n\nlibvirt_domain_memory_stats_actual_balloon_bytes{domain=\"instance-00000337\"} 8.589934592e+09\nlibvirt_domain_memory_stats_available_bytes{domain=\"instance-00000337\"} 8.363945984e+09\nlibvirt_domain_memory_stats_disk_cache_bytes{domain=\"instance-00000337\"} 0\nlibvirt_domain_memory_stats_major_fault_total{domain=\"instance-00000337\"} 3.34448e+06\nlibvirt_domain_memory_stats_minor_fault_total{domain=\"instance-00000337\"} 5.6630255354e+10\nlibvirt_domain_memory_stats_rss_bytes{domain=\"instance-00000337\"} 8.7020544e+09\nlibvirt_domain_memory_stats_unused_bytes{domain=\"instance-00000337\"} 7.72722688e+08\nlibvirt_domain_memory_stats_usable_bytes{domain=\"instance-00000337\"} 2.27098624e+09\nlibvirt_domain_memory_stats_used_percent{domain=\"instance-00000337\"} 72.84790881786736\n\nlibvirt_domain_vcpu_cpu{domain=\"instance-00000337\",vcpu=\"0\"} 7\nlibvirt_domain_vcpu_delay_seconds_total{domain=\"instance-00000337\",vcpu=\"0\"} 880.985415109\nlibvirt_domain_vcpu_state{domain=\"instance-00000337\",vcpu=\"0\"} 1\nlibvirt_domain_vcpu_time_seconds_total{domain=\"instance-00000337\",vcpu=\"0\"} 315190.41\nlibvirt_domain_vcpu_wait_seconds_total{domain=\"instance-00000337\",vcpu=\"0\"} 0\n\nlibvirt_up 1\n```\n\n## Libvirt/qemu version notice\nSome of the above might be exposed only with:\n\n`libvirt \u003e= v7.2.0`:\nlibvirt_domain_vcpu_delay_seconds_total\n\n# Historical\nProject forked from https://github.com/kumina/libvirt_exporter and substantially rewritten.\nImplemented support for several additional metrics, ceph rbd (and network block devices), ovs.\nImplemented statistics collection using GetAllDomainStats\n\nAnd then forked again from https://github.com/rumanzo/libvirt_exporter_improved and rewritten.\nImplemented meta metrics and more info about disks, interfaces and domain.\n\nThis repository provides code for a Prometheus metrics exporter\nfor [libvirt](https://libvirt.org/). This exporter connects to any\nlibvirt daemon and exports per-domain metrics related to CPU, memory,\ndisk and network usage. By default, this exporter listens on TCP port\n9177.\n\nThis exporter makes use of\n[libvirt-go](https://gitlab.com/libvirt/libvirt-go-module), the official Go\nbindings for libvirt. This exporter make use of the\n`GetAllDomainStats()`\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FTinkoff%2Flibvirt-exporter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FTinkoff%2Flibvirt-exporter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FTinkoff%2Flibvirt-exporter/lists"}