I followed the guides to configure watcher to send an email using this documentation, Configuring Watcher to Send Email | Elasticsearch Watcher [2.4] | Elastic, but whenever I add the exchange settings into my elasticsearch.yml file I get errors over and over like the following and Elasticsearch fails to start:
Suppressed: java.lang.IllegalArgumentException: unknown setting [watcher.actions.email.service.account.exchange_account.smtp.password] please check that any required plugins are installed, or check the breaking changes documentation for removed settings
at org.elasticsearch.common.settings.AbstractScopedSettings.validate(AbstractScopedSettings.java:293) ~[elasticsearch-5.4.0.jar:5.4.0]
at org.elasticsearch.common.settings.AbstractScopedSettings.validate(AbstractScopedSettings.java:256) ~[elasticsearch-5.4.0.jar:5.4.0]
at org.elasticsearch.common.settings.SettingsModule.(SettingsModule.java:139) ~[elasticsearch-5.4.0.jar:5.4.0]
at org.elasticsearch.node.Node.(Node.java:342) ~[elasticsearch-5.4.0.jar:5.4.0]
at org.elasticsearch.node.Node.(Node.java:242) ~[elasticsearch-5.4.0.jar:5.4.0]
at org.elasticsearch.bootstrap.Bootstrap$6.(Bootstrap.java:242) ~[elasticsearch-5.4.0.jar:5.4.0]
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:242) ~[elasticsearch-5.4.0.jar:5.4.0]
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:360) ~[elasticsearch-5.4.0.jar:5.4.0]
at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:123) ~[elasticsearch-5.4.0.jar:5.4.0]
at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:114) ~[elasticsearch-5.4.0.jar:5.4.0]
at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:67) ~[elasticsearch-5.4.0.jar:5.4.0]
at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:122) ~[elasticsearch-5.4.0.jar:5.4.0]
at org.elasticsearch.cli.Command.main(Command.java:88) ~[elasticsearch-5.4.0.jar:5.4.0]
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:91) ~[elasticsearch-5.4.0.jar:5.4.0]
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:84) ~[elasticsearch-5.4.0.jar:5.4.0]
Suppressed: java.lang.IllegalArgumentException: unknown setting [watcher.actions.email.service.account.exchange_account.smtp.port] please check that any required plugins are installed, or check the breaking changes documentation for removed settings
If i remove the configurations from the elasticsearch.yml file and start elasticsearch, it starts just fine. I can query "curl -XGET 'http://localhost:9200/_watcher/stats?pretty'", and get a normal response like so:
{
"watcher_state" : "starting",
"watch_count" : 0,
"execution_thread_pool" : {
"queue_size" : 0,
"max_size" : 0
},
"manually_stopped" : false
}
The following query would tell me that watcher is working fine before the exchange entry has been made in the elasticsearch.yml file, so what could be causing this issue? I pretty much copy and pasted the configuration from the documentation, only changing the username and password. It's almost like when I make that entry elasticsearch is acting like the watcher module doesn't exist. I installed watcher from xpack and according to the documentation I just needed to add that entry into my elasticsearch.yml file and it is supposed to work...