NetApp [special_netapp_ontap]

CMK version:2.3.0p3
OS version:RHEL9

Error message:[special_netapp_ontap]: Agent exited with code 1: Agent failed - please submit a crash report!

Detailed Error-Message:
“exc_type”: “NetAppRestError”,
“exc_value”: “Caused by HTTPError(‘400 Client Error: Bad Request for url: https://10.xxx.xxx.xxx:443/api/storage/volumes?is_constituent=True&fields=uuid%2Cstate%2Cname%2Cmsid%2Cspace.available%2Cspace.afs_total%2Cspace.logical_space.enforcement%2Cspace.logical_space.used%2Csvm.name%2Csvm.uuid%2Cfiles.maximum%2Cfiles.used%2Cspace.snapshot.reserve_size%2Cspace.snapshot.used%2Cspace.snapshot.reserve_percent’): The value "msid" is invalid for field "fields" (<field,…>)”,

**Description:
I’m trying to monitor our Netapp (NetApp Release 9.10.1P12) via API… I’ve created a readonly-user with full reading-rights. But when i click on Service-Discovery the check fails with error code 1. Is this a Bug, have i missed something to configure or is something other wrong?

I assume you have a support contract? I think its better you create a support case.

Unfortunately not. Currently i am using the RAW-Version of Check-MK to test if it will fit our requirements.

Answer is very easy - your firmware is too old.
msid in volumes are only existing with 9.11 and newer

It would be good to have some information about the version requirements inside the special agent configuration.

2 Likes

Hi Andreas,
Thanks! I tried it with another Test-System with NetApp release 9.12

But now, i receive after a few minutes the Message: TypeError: Object of type timedelta is not JSON serializable :-/

I tested it now with another CheckMK-Version (2.2.0p26) on a RHEL8 without problems. It seems that there is a Bug in the new Version (and/or RHEL9)

2.2 uses the old Netapp API and in 2.3 you can select old API or new ONTAP API.

Hello Andreas,
in the config page I cannot find and option to choose between old and new api. How can I do what you indicated?
Thanks,
Steffen

image
New API
The old one has the name “NetApp via WebAPI” and is normally not shown anymore if you have not existing rules as it is deprecated.

Hi Andreas,
thanks for the update. I know it is not your fault, but from my perspective it feels odd to have to make the target fit the monitoring system and not the other way around. The ONTAP version is still supported by NetApp and so the monitoring system should support it.
But maybe that’s just me. Anyway, thanks for looking into that.

Why? If the oldest version that is supported is 9.12, your 9.10 should be considered as too old.

Well, that is an opinion. The version we are using is still supported by NetApp and that is all that counts. Simple, isn’t it?

No the API version in your used Netapp version don’t provide the needed data.
Why should a check/special agent work without the needed data?

I get you. Never mind.

Hi, I have the same problem as mentioned above. However, my NetApp Version is 9.13 and therefore should be compatible with the new API.

The monitoring for my other NetApp machine with the same version works. Machines are identical and the users that I created are identical as well. I tried it with a new user and new CheckMK rule but got this error: TypeError (Object of type timedelta is not JSON serializable)

I wanted to try the old one “NetApp via WebAPI”, however, I can’t add new rules as it is depricated. Any ideas?
I also have one NetApp that still runs on 9.11

New rule can be created with this “hack”.

https://yourserver/site/check_mk/wato.py?filled_in=new_rule&ruleset_back_mode=rulesets&rule_folder=&varname=special_agents%3Anetapp&mode=new_rule&folder=&_new_dflt_rule=SET

I think your problem with the new ONTAP API is a little bit different than the original problem.
The complete crash report or the special agent execution with debug/verbose switch would be helpful.

Hi b.lo,
i assume the easiest way is to create an additional site on your check-mk-server with an earlier version, where the plugin isn’t deprecated. (if the hack from andreas-doehler doens’t work like you expect)
You can call it “test” and access it with http://yourcmkserver.local/test/

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed. Contact an admin if you think this should be re-opened.