Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ZBXNEXT-8388] Include normalized value along with raw values in SMART data attributes #95

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

glesys-andreas
Copy link

The raw value from smartctl is not always accurate, and defined by the manufacturer, by exposing the normalizedValue we can build templates and triggers for example wear_level.

For example: In our setup with many Samsung SSDs, we can read the wear level from attribute id 177 from the smartdata, but the raw value in this case is far from the same as the normalized value.

          "id": 177,
          "name": "Wear_Leveling_Count",
          "raw": {
            "string": "8308",
            "value": 8308
          },
          "thresh": 5,
          "value": 56,
          "when_failed": "",
          "worst": 56

Reference: https://support.zabbix.com/browse/ZBXNEXT-8388

@vdovinmih
Copy link

UP. Is any body interested in normalized values ?

@Silureth
Copy link

UP. Yes please!!!

@serisman
Copy link

UP. Is any body interested in normalized values ?

Yes please! It would be very helpful in monitoring the health of SSDs over time.

The specific normalized value mentioned above is the inverse of what we already have for NVMe SSDs with the 'percentage_used' attribute. So, being able get something similar for SATA SSDs (that support it) would be helpful in leveling the playing field.

@Silureth
Copy link

Silureth commented May 28, 2024

Well this never will be included so
IF anybody still needs this... I had some free time and made a precompiled version for 6.0 LTS and added the compatible zbx template with it, you can download from the link. Use it as you want. https://github.com/Silureth/zabbix-agent2-smart-raw

@gchmurka123
Copy link

gchmurka123 commented Jun 14, 2024

Please add this functionality.
Currently, there is no option to monitor the "used" of SATA SSD drives in agent2 built-in SMART plugin, because the raw value is completely useless!! Now I face of to migrate from agebnt1 to agent2.
In agent2 i still must use my old solutions from agent1: discover, and downloaded all values from smart and preprocesing based on ID.

Additionally, different drives have this information in different fields (ID) with different names, less popular manufacturers can't be found in update-smart-drivedb to expand ID to "name".

If build SMART plugin in agent2 return normalized value and ID it'd be great, because I matches the model and gets the value from a specific ID.

Correctly checking disk life is crucial when planning a disk replacement policy. Based on the disk life left readings, you can predict when the disk will need to be replaced. Without this functionality, the smart agent2 plugin in its current form is useless and only suitable for nvme.

I monitor over 1000 servers with various sata SSD drives, here is my collected list of values ​​that should be monitored for specific ssd sata models:

samsung
value ID: 177

intel
value ID: 233

Micron 5100 / 52x0 / 5300 / 5400 SSDs
value ID: 202

cruical CT2000MX
value ID: 202

goodram + irdm
raw ID: 231

Sandisk SATA Cloudspeed Max trzeba wziac wartość RAW z 178 i podzielic przez 100
raw ID: 178 divide the value by 100 !

SK hynix SATA SSDs
value ID: 245

kingston
value ID: 231

Dell Certified Intel S4x00/D3-S4x10 Series SSDs
value ID: 245

Toshiba THNSF8
value ID: 233

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
5 participants