eve icon indicating copy to clipboard operation
eve copied to clipboard

Add sending metrics for devices from ZFS

Open vk-en opened this issue 2 years ago • 3 comments

This is the second part (first part #2645 ) of the PR with the addition of functionality for sending statistics for the Zpool and devices included in it to the controller.

vk-en avatar Jun 01 '22 11:06 vk-en

@eriknordmark I updated this PR

vk-en avatar Jul 25 '22 11:07 vk-en

Updated PR. At the request of @zedi-pramodh , @kalyan-nidumolu I changed the types of variables "PoolStatus" and "VDevAux" state in informational messages from numeric to string by sending a detailed state description.

With the pool in a normal state, these fields will not take up a large size in messages. Numeric states remain but will not be sent to the controller. We may need them in the future to respond to emerging issues with the storage system inside EVE.

vk-en avatar Aug 12 '22 14:08 vk-en

And before merging this PR with the main branch, it is advisable to wait for PR #2746 to merge. This will avoid the difference in states that occurs due to different versions (more details in PR #2746).

vk-en avatar Aug 12 '22 14:08 vk-en

I'm trying to make sure that the names for messages and their identifying content is the same across metrics.proto and info.proto when it comes to storage. But perhaps you can check that @vk-en? What I see is that in info.proto we use "Disk" as part of names where in metrics.proto we use "Device". Can we use Disk across the board? Also the pattern for identifying/naming the objects (be they pool, disks, childen) doesn't seem consistent but I need a lot of time and a whiteboard to write down the side by side comparison so I'd appreciate if you can do the comparison.

eriknordmark avatar Aug 26 '22 12:08 eriknordmark

Also the pattern for identifying/naming the objects (be they pool, disks, childen) doesn't seem consistent but I need a lot of time and a whiteboard to write down the side by side comparison so I'd appreciate if you can do the comparison.

Of course, I will do it.

vk-en avatar Aug 26 '22 12:08 vk-en

I'm trying to make sure that the names for messages and their identifying content is the same across metrics.proto and info.proto when it comes to storage. But perhaps you can check that @vk-en? What I see is that in info.proto we use "Disk" as part of names where in metrics.proto we use "Device". Can we use Disk across the board? Also the pattern for identifying/naming the objects (be they pool, disks, childen) doesn't seem consistent but I need a lot of time and a whiteboard to write down the side by side comparison so I'd appreciate if you can do the comparison.

I drew a diagram (SVG on google drive) where I compare info.proto and metrics.proto. It should bring understanding and show that everything is similar. I hope this is exactly what you needed.

I can also assume that you were misled by a message called StorageDeviceMetrics. Since all metrics in zfs, with the exception of zvols, have a common structure and fields,And so I decided to name it neutrally from /pool/raid/disk.

vk-en avatar Aug 26 '22 14:08 vk-en

I drew a diagram (SVG on google drive) where I compare info.proto and metrics.proto. It should bring understanding and show that everything is similar. I hope this is exactly what you needed.

Thanks that's a great comparison. Too me it shows a set of gratuitous differences in the structure (the references between the objects) and the naming/identification of the objects and I think we should make the metrics side match those aspects of the info side.

What's a good time to have a call about this? Should we use the EVE standing meeting this Thursday?

eriknordmark avatar Aug 30 '22 23:08 eriknordmark

Yes please lets use the EVE standing meeting,

zedi-pramodh avatar Aug 31 '22 01:08 zedi-pramodh

@eriknordmark I updated PR. And I drew a new diagram (SVG on google drive) to compare.

vk-en avatar Sep 02 '22 09:09 vk-en