cloudstack-documentation icon indicating copy to clipboard operation
cloudstack-documentation copied to clipboard

Update usage types in the docs

Open sureshanaparti opened this issue 6 months ago • 13 comments

This PR updates/sync the usage types in docs with the API response and code.

Fixes https://github.com/apache/cloudstack/issues/10813

Current doc: https://docs.cloudstack.apache.org/en/latest/adminguide/usage.html#usage-types.

list usagetypes API response =>

(usageenv) 🐱 > list usagetypes 
{
  "count": 25,
  "usagetype": [
    {
      "description": "Running Vm Usage",
      "usagetypeid": 1
    },
    {
      "description": "Allocated Vm Usage",
      "usagetypeid": 2
    },
    {
      "description": "IP Address Usage",
      "usagetypeid": 3
    },
    {
      "description": "Network Usage (Bytes Sent)",
      "usagetypeid": 4
    },
    {
      "description": "Network Usage (Bytes Received)",
      "usagetypeid": 5
    },
    {
      "description": "Volume Usage",
      "usagetypeid": 6
    },
    {
      "description": "Template Usage",
      "usagetypeid": 7
    },
    {
      "description": "ISO Usage",
      "usagetypeid": 8
    },
    {
      "description": "Snapshot Usage",
      "usagetypeid": 9
    },
    {
      "description": "Security Group Usage",
      "usagetypeid": 10
    },
    {
      "description": "Load Balancer Usage",
      "usagetypeid": 11
    },
    {
      "description": "Port Forwarding Usage",
      "usagetypeid": 12
    },
    {
      "description": "Network Offering Usage",
      "usagetypeid": 13
    },
    {
      "description": "VPN users usage",
      "usagetypeid": 14
    },
    {
      "description": "VM Disk usage(I/O Read)",
      "usagetypeid": 21
    },
    {
      "description": "VM Disk usage(I/O Write)",
      "usagetypeid": 22
    },
    {
      "description": "VM Disk usage(Bytes Read)",
      "usagetypeid": 23
    },
    {
      "description": "VM Disk usage(Bytes Write)",
      "usagetypeid": 24
    },
    {
      "description": "VM Snapshot storage usage",
      "usagetypeid": 25
    },
    {
      "description": "Volume on secondary storage usage",
      "usagetypeid": 26
    },
    {
      "description": "VM Snapshot on primary storage usage",
      "usagetypeid": 27
    },
    {
      "description": "Backup storage usage",
      "usagetypeid": 28
    },
    {
      "description": "Bucket storage usage",
      "usagetypeid": 29
    },
    {
      "description": "Network usage",
      "usagetypeid": 30
    },
    {
      "description": "VPC usage",
      "usagetypeid": 31
    }
  ]
}
(usageenv) 🐱 > 

code =>

https://github.com/apache/cloudstack/blob/39c5641cbe674b19bc77082b850565f634a7cb84/api/src/main/java/org/apache/cloudstack/usage/UsageTypes.java#L24-L50


📚 Documentation preview 📚: https://cloudstack-documentation--504.org.readthedocs.build/en/504/

sureshanaparti avatar May 13 '25 08:05 sureshanaparti

@blueorangutan docbuild

sureshanaparti avatar May 13 '25 08:05 sureshanaparti

@sureshanaparti a Jenkins job has been kicked to build the document. I'll keep you posted as I make progress.

blueorangutan avatar May 13 '25 08:05 blueorangutan

QA-Doc build preview: https://qa.cloudstack.cloud/builds/docs-build/pr/504. (QA-JID 339)

blueorangutan avatar May 13 '25 08:05 blueorangutan

@rajujith Update the usage types (still the record formats for these to be updated)

sureshanaparti avatar May 13 '25 09:05 sureshanaparti

@blueorangutan docbuild

sureshanaparti avatar May 14 '25 08:05 sureshanaparti

@sureshanaparti a Jenkins job has been kicked to build the document. I'll keep you posted as I make progress.

blueorangutan avatar May 14 '25 08:05 blueorangutan

QA-Doc build preview: https://qa.cloudstack.cloud/builds/docs-build/pr/504. (QA-JID 342)

blueorangutan avatar May 14 '25 08:05 blueorangutan

quite frankly I am against this change. there is a list usage types API and it should document the usage types. adding/updating the docs on this in creating a split source of truth.

DaanHoogland avatar May 26 '25 13:05 DaanHoogland

quite frankly I am against this change. there is a list usage types API and it should document the usage types. adding/updating the docs on this in creating a split source of truth.

@DaanHoogland, The doc in its current form has already diverged from the source of truth, so adding the missing usage types wouldn’t introduce any additional inconsistency.

As a potential improvement, perhaps we could sync the doc with the missing Usage Types and clearly mention that users should refer to the list Usage Types API for the most up-to-date information?

I was hoping to add some details related to Backup usage to the doc, but currently, Backup isn’t even mentioned as a usage type.

abh1sar avatar Jul 18 '25 09:07 abh1sar

@abh1sar ,

quite frankly I am against this change. there is a list usage types API and it should document the usage types. adding/updating the docs on this in creating a split source of truth.

@DaanHoogland, The doc in its current form has already diverged from the source of truth, so adding the missing usage types wouldn’t introduce any additional inconsistency.

I do not believe that is a reason to let it like this. I think the paragraph should be removed and replaced with a link/command to retrieve the data from the API. We are creating a path to continuous maintenance and probably technical debt if we allow for documentation of things which are also documented in code.

As a potential improvement, perhaps we could sync the doc with the missing Usage Types and clearly mention that users should refer to the list Usage Types API for the most up-to-date information?

If this is implemented in an update script we still need to have it run and humans will forget.

I was hoping to add some details related to Backup usage to the doc, but currently, Backup isn’t even mentioned as a usage type.

That should be solved in the source (i.e. the API doc, not in this file)

cc @Pearl1594 @sureshanaparti @rajujith

DaanHoogland avatar Aug 06 '25 08:08 DaanHoogland

@sureshanaparti @rajujith @weizhouapache , I do not like this way maintaining this information but am not going to reject it. Should we merge this?

DaanHoogland avatar Oct 22 '25 14:10 DaanHoogland

@sureshanaparti @rajujith @weizhouapache , I do not like this way maintaining this information but am not going to reject it. Should we merge this?

@DaanHoogland do you have a way to maintain the information ?

weizhouapache avatar Oct 22 '25 18:10 weizhouapache

@sureshanaparti @rajujith @weizhouapache , I do not like this way maintaining this information but am not going to reject it. Should we merge this?

@DaanHoogland do you have a way to maintain the information ?

In my opinion we should return the description in the table with the list usagetypes ouput, and only describe examples and use cases here. (https://github.com/apache/cloudstack-documentation/pull/504#issuecomment-2909781503)

DaanHoogland avatar Oct 23 '25 07:10 DaanHoogland