The Icinga "WDQS SPARQL" check has been failing since the last WDQS deployment.
This check is defined in puppet as:
check_http!query.wikidata.org!/bigdata/namespace/wdq/sparql?query=prefix%20schema:%20%3Chttp://schema.org/%3E%20SELECT%20*%20WHERE%20%7B%3Chttp://www.wikidata.org%3E%20schema:dateModified%20?y%7D&format=json!"xsd:dateTime"
The intent seems to be to check that the full traffic stack is configured correctly by running a SPARQL query via the public SPARQL endpoint, going through all the layers (caching, LVS, local nginx, blazegraph, etc...). This check is defined for each WDQS host, but is executed against the common public endpoint, which does not make sense. Instead, we want to locally check just the local path (nginx -> blazegraph) and have a single common check for the common endpoint.
I have a hard time navigating the Icinga configuration. The check definition (above) seems to match the the check_http command definition in /etc/icinga/commands.cfg. It seems that the intent was to use the check_http_url_for_string command instead.
define command { command_name check_http command_line $USER1$/check_http -H $HOSTADDRESS$ }
But that command takes no argument. I'm probably missing something.
Note: another check ("WDQS HTTP") was also failing. That check has been removed already since it was checking for the WDQS UI which is now deployed as a micro-site and thus should not be checked on the WDQS servers anymore.