ONTAP Rest API Discussions

What is the difference between "system" and "system:node" counters in cluster counter tables API?

ns-api-guru
2,648 Views

My goal is to retrieve NFS and total OPS for a node.

 

Cluster version is: 9.11.1P5

I am using the following API:

/api/cluster/counter/tables/?fields=name,description

 

There are 2 counters that seem related to the node:

    {
      "name": "system",
      "description": "The System table reports general system activity. This includes global throughput for the main services, I/O latency, and CPU activity. The alias name for system:node is system_node.",
      "_links": {
        "self": {
          "href": "/api/cluster/counter/tables/system"
        }
      }
    },
    {
      "name": "system:node",
      "description": "The System table reports general system activity. This includes global throughput for the main services, I/O latency, and CPU activity. The alias name for system:node is system_node.",
      "_links": {
        "self": {
          "href": "/api/cluster/counter/tables/system%3Anode"
        }
      }
    },

 

As you can see, their description is identical. I lean more toward "system:node" since "system" probably means the entire cluster, but the description is unclear so that is why I wanted to double check.

 

  1. Am I using the right API call to fetch node's NFS and total OPS?
    1. If so, which counter table should I use for getting node's NFS and total OPS: "system" or "system:node"?
1 ACCEPTED SOLUTION

Twesha
2,607 Views

Hi,

Your assumption about the tables is correct. If you want to get a single node's information, you should use system:node. The system table will give you information about the cluster. I also wanted to share the ONTAP-REST counter manager mapping document in case you don't have it: https://library.netapp.com/ecm/ecm_download_file/ECMLP2883449

Let me know if you have any more questions!

View solution in original post

6 REPLIES 6

Twesha
2,608 Views

Hi,

Your assumption about the tables is correct. If you want to get a single node's information, you should use system:node. The system table will give you information about the cluster. I also wanted to share the ONTAP-REST counter manager mapping document in case you don't have it: https://library.netapp.com/ecm/ecm_download_file/ECMLP2883449

Let me know if you have any more questions!

ns-api-guru
2,472 Views

Hi @Twesha ,

 

I was able to fetch the data but now I am not sure how to interpret it.

For example, here is the output I got from API for a single node:

"counters": [
  {
    "name": "nfs_ops",
    "value": 70252420484
  },
  {
    "name": "cifs_ops",
    "value": 1999438747
  },
  {
    "name": "fcp_ops",
    "value": 0
  },
  {
    "name": "iscsi_ops",
    "value": 0
  },
  {
    "name": "read_ops",
    "value": 15834181314
  },
  {
    "name": "write_ops",
    "value": 13174325229
  },
  {
    "name": "other_ops",
    "value": 43243352688
  },
  {
    "name": "total_ops",
    "value": 72251859231
  },
  {
    "name": "read_latency",
    "value": 42309528262324
  },
  {
    "name": "write_latency",
    "value": 177985327679419
  },
  {
    "name": "other_latency",
    "value": 0
  },
  {
    "name": "total_latency",
    "value": 220294855941743
  },
  {
    "name": "read_data",
    "value": 645577302399120
  },
  {
    "name": "write_data",
    "value": 435278355363345
  },
  {
    "name": "other_data",
    "value": 0
  },
  {
    "name": "total_data",
    "value": 1080855657762465
  }
],

 

I read documentation provided here: https://library.netapp.com/ecm/ecm_download_file/ECMLP2883449#volume

 

Here is how it describes "read_latency": Average latency for all read operations in the system in microseconds.

API returns 42309528262324 for read latency. If I convert it to seconds, it becomes 42309528.262323998.

 

But how is this possible to have such high latency?

 

Basically, my question is how to interpret/consume/convert these numbers? Same goes for OPS, and throughput.

 

Thanks

ns-api-guru
2,426 Views

Hi @Twesha ,

 

Are you able to see these comments? Or do threads become inactive/muted after being marked as resolved?

Twesha
2,407 Views

Hi, yes, I see your question. I believe those are total values. So you would need to take 2 snapshots of the read_latency at separate times as well the read_ops, calculate the delta yourself, and then calculate the latency. 

ns-api-guru
2,398 Views

Hi @Twesha,

 

Can we get a definitive clear formula for interpreting these values? You said you "believe" those are total values, but what if they are not? Do you have some document on that? We need for OPS, latency etc.

Twesha
2,364 Views

These are total values. So to calculate within a time frame, you would have to do delta(read_latency)/delta(read_ops). 

Public