Hi, yesterday I decided to update one of my 3 satellites with the Wheezy version to Jessie.
Everything has gone quite well except a configuration file that in fact in the other satellites is identical and also are already updated to the Jessie version.
This would be the route:
/var/lib/icinga2/api/zones/global-conf/_etc/services/http-services.conf
This would be the content of the file:
// HTTP HTTPS Default Checks
apply Service “http_pattern-” for (website_name => config in host.vars.website_name) {
import “generic-service”
check_command = “http”vars += config assign where host.vars.website_name
// ignore where match (“xxxx.com”, host.vars.website_name)
ignore where host.vars.cluster_node
// ignore where match (“ggggg.com*”, host.vars.website_name)
// ignore where match (“zzzzz/status”, host.vars.website_name)
// ignore where match (“192.168.1.50:11180”, host.vars.website_name)
// ignore where match (“yyyyy”, host.vars.website_name)
ignore where match (“.well-known/acme-challenge” , host.vars.website_name)
}apply Service “SSL-Certificate-” for (ssl_website => config in host.vars.ssl_website) {
import “generic-service”
check_command = “http”// vars.http_ssl = “true”
vars.http_certificate = “30,20”
vars += config
vars.notify = “false”assign where host.vars.ssl_website
ignore where host.vars.cluster_node
ignore where match (“xxxx.com”, host.vars.website_name)}
and after a icinga2 daemon -C I get 20 critical errors, one for each host (not all hosts) like:
[2020-08-26 09:25:26 +0200] critical/config: Error: Error while evaluating expression: Dictionaries are not supported by match().
Location: in /var/lib/icinga2/api/zones/global-conf/_etc/services/http-services.conf: 10:16-10:78
/var/lib/icinga2/api/zones/global-conf/_etc/services/http-services.conf(8): assign where host.vars.website_name
/var/lib/icinga2/api/zones/global-conf/_etc/services/http-services.conf(9): ignore where host.vars.cluster_node
/var/lib/icinga2/api/zones/global-conf/_etc/services/http-services.conf(10): ignore where match (“.well-known/acme-challenge” , host.vars.website_name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/var/lib/icinga2/api/zones/global-conf/_etc/services/http-services.conf(11): }
/var/lib/icinga2/api/zones/global-conf/_etc/services/http-services.conf(12):
(0) Evaluating 'apply' rule (in /var/lib/icinga2/api/zones/global-conf/_etc/services/http-services.conf: 2:1-2:84)
(1) Evaluating 'apply' rules for host 'XXXX.com'
I don’t know, it seems to me that the syntax is right, I don’t see where the problem is.
Curiously, if I delete the http-services.conf file and restart icinga2 it works correctly
Does anyone know why?