listUsageRecords to return the physical size of VM snapshots on primary storage
- Ngôn ngữ chính
- Java
- Star
- 3.1k
- Fork
- 1.4k
- Merge trung bình
- 6 ngày 19 giờ
- Pull request đã merge (30 ngày)
- 32
Mô tả
##### ISSUE TYPE
* Improvement Request
##### COMPONENT NAME
~~~
API, Usage
~~~
##### CLOUDSTACK VERSION
~~~
4.18.1
~~~
##### CONFIGURATION
VM snapshots , VMware
##### OS / ENVIRONMENT
##### SUMMARY
Currently cloudstack usage only returns the virtual size of the VM snapshot on primary storage i.e usage type 27. It would be useful to get the physical size as well in the API response.
```
cmk list usagerecords startdate=2023-12-06 09:00:00 type=27 enddate=2023-12-06 09:59:59
--
{
"account": "admin",
"accountid": "570917c5-8ddb-11ee-a6eb-1e002e000c9f",
"description": "VMSnapshot on primary storage usage Id: 0333f93b-fd60-42ad-a961-49b75df4313f for VM Rocky-2 (9058215a-d674-468d-ac61-449bd0593448) with size (50.00 GB) 53687091200",
"domain": "ROOT",
"domainid": "376e4be1-8ddb-11ee-a6eb-1e002e000c9f",
"enddate": "2023-12-06'T'09:59:59+00:00",
"name": "rocky-snapshot3",
"rawusage": "1",
"size": 53687091200,
"startdate": "2023-12-06'T'09:00:00+00:00",
"tags": [],
"usage": "1 Hrs",
"usageid": "0333f93b-fd60-42ad-a961-49b75df4313f",
"usagetype": 27,
"virtualmachineid": "9058215a-d674-468d-ac61-449bd0593448",
"zoneid": "771aecba-b1ef-4bfc-94e6-b325aa2a4c01"
},
--
{
"account": "admin",
"accountid": "570917c5-8ddb-11ee-a6eb-1e002e000c9f",
"description": "VMSnapshot on primary storage usage Id: 591a15ab-b0d0-465c-a30f-fe9c0785da88 for VM Rocky-2 (9058215a-d674-468d-ac61-449bd0593448) with size (50.00 GB) 53687091200",
"domain": "ROOT",
"domainid": "376e4be1-8ddb-11ee-a6eb-1e002e000c9f",
"enddate": "2023-12-06'T'09:59:59+00:00",
"name": "rocky-snapshot1",
"rawusage": "1",
"size": 53687091200,
"startdate": "2023-12-06'T'09:00:00+00:00",
"tags": [],
"usage": "1 Hrs",
"usageid": "591a15ab-b0d0-465c-a30f-fe9c0785da88",
"usagetype": 27,
"virtualmachineid": "9058215a-d674-468d-ac61-449bd0593448",
"zoneid": "771aecba-b1ef-4bfc-94e6-b325aa2a4c01"
},
{
"account": "admin",
"accountid": "570917c5-8ddb-11ee-a6eb-1e002e000c9f",
"description": "VMSnapshot on primary storage usage Id: e82b68a2-5e63-4509-9be0-48aedd822529 for VM Rocky-2 (9058215a-d674-468d-ac61-449bd0593448) with size (50.00 GB) 53687091200",
"domain": "ROOT",
"domainid": "376e4be1-8ddb-11ee-a6eb-1e002e000c9f",
"enddate": "2023-12-06'T'09:59:59+00:00",
"name": "rocky-snapshot2",
"rawusage": "1",
"size": 53687091200,
"startdate": "2023-12-06'T'09:00:00+00:00",
"tags": [],
"usage": "1 Hrs",
"usageid": "e82b68a2-5e63-4509-9be0-48aedd822529",
"usagetype": 27,
"virtualmachineid": "9058215a-d674-468d-ac61-449bd0593448",
"zoneid": "771aecba-b1ef-4bfc-94e6-b325aa2a4c01"
},
mysql> select id,usage_display,usage_type,format_bytes(size) as size,format_bytes(virtual_size) as virtual_size,start_date,end_date from cloud_usage.cloud_usage where usage_type=27 and vm_instance_id=2782 and start_date='2023-12-06 09:00:00';
+------+---------------+------------+-----------+--------------+---------------------+---------------------+
| id | usage_display | usage_type | size | virtual_size | start_date | end_date |
+------+---------------+------------+-----------+--------------+---------------------+---------------------+
| 9709 | 1 Hrs | 27 | 24.61 GiB | 50.00 GiB | 2023-12-06 09:00:00 | 2023-12-06 09:59:59 |
| 9713 | 1 Hrs | 27 | 50.00 GiB | 50.00 GiB | 2023-12-06 09:00:00 | 2023-12-06 09:59:59 |
| 9714 | 1 Hrs | 27 | 24.61 GiB | 50.00 GiB | 2023-12-06 09:00:00 | 2023-12-06 09:59:59 |
+------+---------------+------------+-----------+--------------+---------------------+---------------------+
```
Hướng dẫn đóng góp
Hướng nghiên cứu
Bắt đầu với việc xử lý API listUsageRecords cho usage type 27 và so sánh phản hồi của API với các cột cloud_usage và virtual_size được hiển thị trong báo cáo. Truy vết cách thông tin sử dụng snapshot VM được điền cho bộ nhớ chính VMware. Hoàn thành có nghĩa là API cung cấp cả kích thước vật lý và kích thước ảo cho các bản ghi sử dụng này.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- java, mysql
- Lĩnh vực
- api, cloud, databases
- Loại issue
- Tính năng
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 45/100