#ruby-on-rails #sensu
#ruby-on-rails #sensu
Вопрос:
Пытаюсь настроить Amazon ses для sensu
Настройка 1 у меня есть
обработчик-mailer.rb -j mailme_using_amazonses в моем config.json
и handler-mailer.rb
находится в моей /etc/sensu/plugins
папке
Когда я запускаю в командной строке, я получаю ошибки
ruby /etc/sensu/plugins/handler-mailer.rb -j mailme_using_amazonses
/var/lib/gems/1.9.1/gems/mixlib-cli-1.7.0/lib/mixlib/cli.rb:230:in `parse_options': invalid option: -j (OptionParser::InvalidOption)
from /var/lib/gems/1.9.1/gems/sensu-plugin-1.4.3/lib/sensu-handler.rb:18:in `initialize'
from /var/lib/gems/1.9.1/gems/sensu-plugin-1.4.3/lib/sensu-handler.rb:78:in `new'
from /var/lib/gems/1.9.1/gems/sensu-plugin-1.4.3/lib/sensu-handler.rb:78:in `block in <class:Handler>'
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- erubis (LoadError)
from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from /etc/sensu/plugins/handler-mailer.rb:20:in `<main>'
В моем mailme_using_amazonses есть следующее
{
"handlers": {
"mailer-ses": {
"mail_from": "from@example.com",
"mail_to": "to@example.com",
"use_ami_role": true,
"secret_key": "MyKey",
"access_key": "MyAccess",
"region": "us-west-2"
}
}
}
Настройка 2
В config.json
у меня есть следующее
{
.. other config ..
"handlers": {
"handler-ses": { **HERE I ALSO TRIED "ses"**
"mail_from": "from@example.com",
"mail_to": "to@example.com",
"use_ami_role": true,
"access_key": "accesskey",
"secret_key": "secretekey",
"region": "us-west-2",
"subscriptions": {
"subscription_name": {
"mail_to": "teamemail@example.com"
}
}
}
}
}
При перезапуске sensu-server
я получаю следующую ошибку
configuration is invalid
{
"errors":[
{
"object":{
"mail_from":"from@example.com",
"mail_to":"to@example.com",
"use_ami_role":true,
"access_key":"accesskey",
"secret_key":"secretkey",
"region":"us-west-2",
"subscriptions":{
"subscription_name":{
"mail_to":"teamemail@example.com"
}
},
"name":"handler-ses"
},
"message":"handler type must be a string"
},
{
"object":{
"mail_from":"from@example.com",
"mail_to":"to@example.com",
"use_ami_role":true,
"access_key":"accesskey",
"secret_key":"secretkey",
"region":"us-west-2",
"subscriptions":{
"subscription_name":{
"mail_to":"teamemail@example.com"
}
},
"name":"handler-ses"
},
"message":"unknown handler type"
}
]
}
Чего мне здесь не хватает?
Ответ №1:
Я исправил проблему. Я прочитал handler-ses.rb
файл. Здесь было отмечено, что конфигурация должна быть в ses.json
. Я скопировал конфигурацию ses Setup 2 из config.json
json в ses.json
и поместил ее в /etc/sensu/handers
папку. Ошибка исчезла. Мне еще предстоит получить электронные письма.
Обновит этот ответ после того, как я получу ses
электронное письмо, работающее.