Required Plugins - Exchange Setup

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...

hey,

which Elasticsearch version are you using?

--Alex

5.4.0. It was also installed from the RPM, and have had nothing but issues with it.

I got onto the wrong documentation, was in the watcher documentation, when I needed to be in the xpack documentation. This can be closed.

Hey,

glad you had it solved. If there are issues with the RPM, please be more specific, happy to help solving them.

--Alex

Same problem with standard profile

Suppressed: java.lang.IllegalArgumentException: unknown setting [watcher.actions.email.service.account.work.smtp.host] 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.<init>(SettingsModule.java:139) ~[elasticsearch-5.4.0.jar:5.4.0]
        at org.elasticsearch.node.Node.<init>(Node.java:342) ~[elasticsearch-5.4.0.jar:5.4.0]
        at org.elasticsearch.node.Node.<init>(Node.java:242) ~[elasticsearch-5.4.0.jar:5.4.0]
        at org.elasticsearch.bootstrap.Bootstrap$6.<init>(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]

The solution to this is already posted above. You used the configuration for Elasticsearch 2.x but should use the parameters for x-pack, as you are using Elasticsearch 5.x.

See https://www.elastic.co/guide/en/x-pack/5.4/actions-email.html#configuring-email

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.