So I'm currently working on an integration with our Stingray 9.9 load balancers via the REST API. One of the issues I have run into is after I create a HTTP monitor. The web interface does not display the properties of the monitor correctly.
When I create a HTTP monitor via the web interface, I can see a list of items under 'Additional Settings'. This includes two objects I care about, which are host_header and path. However, when I create a HTTP monitor via the REST API, the web interface only shows 'max_response_len' under additional settings. Pulling the HTTP monitor configuration via the API again, I see that all of those options have been configured.
Even if I manually create a HTTP monitor in the web interface then copy it using the REST API, the new HTTP monitor created with the API does not show the additional settings.
So my question is: Why is the web interface not displaying all of the properties of a HTTP monitor when I create it using the REST API?
The only available workaround to get this fixed is to edit the actual monitor file manually from the shell.
After creating the monitor using REST, ssh into the STM. Go to the location where the monitor is created and edit the file.
Add the following line at the end of the file:
editable_keys host_header path authentication status_regex body_regex
This should fix the problem that you have. At this time, that is the only option to fix this. We are looking to improve the REST based creation process soon, but, I do not have any timelines yet.