ECN-APJ
3 Argentum

How to check VNXe performance statistics data

How to check VNXe performance statistics data

Share: Twitter Icon.png

Please click here for all contents shared by us.


Introduction

This article will introduce how to check VNXe performance statistics data.

Detailed Information

Usually, if we want to check performance statistics data on VNXesystem, we will first think of VNXe Unisphere GUI.

Yes, right. We can check VNXe performance data through Unisphere->System->System Performance. This includes CPU Activity, Network Activity and Volume Activity related performance data.

VNXe system performance.png                       

Besides, if you want to check more detailed VNXe performance data, you can follow the following steps.

Note: If you are not familiar with VNXe, please view other basic VNXe documentations before the article.

Now, we will introduce how to check VNXe performance statistics data through SSH command line.

First, use service account to login to VNXe system via SSH. Under /EMC/backend/perf_stats/ folder, you will see that there are several .db files. VNXeperformance data stored on these database files.

vnxe database.png

When we use the “vi” command to open stats_basic_default.dbfile, only saw garbled characters. But at least we know this is a SQLite format database file. So, how can we read the data?

VNXe vi database.png

We need to download sqlite3.exe tool and execute few commands to convert the database file into readable .txt (text) or .csv (spreadsheet) format. You can download sqlite3.exe tools from http://www.sqlite.org/download.html. In this case, we downloaded sqlite-shell-win32-x86-3080301.zip and extract sqlite3 to C:\test\ folder on Windows.

Then, we need to copy the performance database file to the C:\test\ folder. We can use WinSCP tools to connect VNXe, and copy /EMC/backend/perf_stats/stats_basic_default.dbfile to the C:\test\ folder.

Everything is ready. Open the Windows CMD command line and follow the below steps:

VNXe generate DB.png

1.     #cd c:\test 

2.     #dir            

3.     #sqlite3.exe stats_basic_default.db            

4.     # .output stats_basic_default.csv                

Note: Please do notignore .

5.     #.dump

6.     #Ctrl+c       

7.     #dir            

After executed these command, you will see new generated stats_basic_default.csv file. This file included readable VNXe performance data. We can use the way to export other performance database files.

So, what data is stored in the database file?

Actually there are a lot of parameters and data in those databases. Here is just few of the parameters.

DART parameters in stats_basic_default.db:

SysClockUnixms

NetBasicBytesIn

NetBasicBytesOut

NetInPackets

NetOutPackets

TCPInPackets

TCPOutPackets

UDPInPackets

UDPOutPackets

StoreReadBytes

StoreWriteBytes

StoreReadRequests

StoreWriteRequests

DART parameters in stats_basic_summary.db:

NetBasicBytesIn

NetBasicBytesOut

NetInPackets

NetOutPackets

TCPInPackets

TCPOutPackets

UDPInPackets

UDPOutPackets

StoreWriteBytes

StoreReadBytes

StoreReadRequests

StoreWriteRequests

KernelBufCacheHits

kernelBufCacheLookups

CifsActiveConnections

CifsTotalConnections

CifsBasicReadBytes

CifsBasicReadOpCount

CifsBasicWriteBytes

CifsBasicWriteOpCount

FsDnlcHits

FsDnlctotal

FsOfCachehits

FsOfCachetotal

NfsActiveConnections

NfsBasicReadBytes

NfsBasicReadOpCount

NfsBasicWriteBytes

NfsBasicWriteOpCount

iSCSIBasicReads

iSCSIReadBytes

iSCSIBasicWrites

iSCSIWriteBytes

FLARE_SP parameters in stats_basic_summary.db:

HardErrorCount

HighWaterMarkFlushOff

IdleFlushOn

LowWaterMarkFlushOff

writeCacheFlushes

writeCacheBlocksFlushed

ReadHitRatio

SPTimestamp

SumOfQueueLengths

arrivalsToNonzeroQueue

SumOfLUNBlkRead

SumOfLUNBlkWrite

SumOfLUNDiskRead

SumOfLUNDIskWrite

SumOfLUNDiskBlkRead

SumOfLUNDiskBlkWrite

SumOfFRUBlkRead

SumOfFRUBlkWrite

SumOfFRUReadCount

SumOfFRUWriteCount

So, how can we use these data?

For example, we use StoreWriteRequests parameters of stats_basic_default.db in this case.

Open new generated stats_basic_default.csv file, search keyword "StoreWriteRequests". You will see contents as below picture:

VNXe DB file_new.png

The left column is parameters, right column is the description. And each column’s data with each parameter is one to one correspondence as the above picture.

parameters

description

SysClockUnixms

--Time in unix seconds   (since 1970)"

NetBasicBytesIn

--Total Bytes DART   received from all NICs

NetBasicBytesOut

--Total Bytes DART   sent to all NICs

NetInPackets

--=TCP+UDP

NetOutPackets

--=TCP+UDP

TCPInPackets

--Total number of   packets DART received (including control   packets)

TCPOutPackets

--Total Number of   packets DART sent (including control packets)

UDPInPackets

--Total number of   packets DART received (including control   packets)

UDPOutPackets

--Total Number of   packets DART sent (including control packets)

StoreReadBytes

--Total bytes read   from all DART volumes

StoreWriteBytes

--Total bytes written   to all DART volumes

StoreReadRequests

--Total number of read   requests on all DART volumes

StoreWriteRequests

--Total number of   write requests on   all DART volumes

In this case, we use the value of C column (TimeStamp) and P column (StoreWriteRequests).

VNXe StoreWriteRequests.png      

It seems that the number of write requests that were recorded during the five minute period is added to the old value and then inserted as a new entry to the database. So basically subtracting the earlier value from the new one we get the total number of write requests for the specific five minute period of time: 161067-161063= 4

Now if we divide that result with 300 (seconds) we get the average number of write requests per second during the specific five minute period: 4/300=0.013

Due to the write request is small on Lab environment, so the value is very low.

So, use this way, we can calculate the VNXe performance data in the specific period.


Author: Leo Li

             

iEMC APJ

Please click here for for all contents shared by us.