Установка плагина Slack в Sensu NON-enterprise edition

У меня работает Sensu, и я следовал инструкциям, насколько мог, чтобы установить плагин Slack. Я пытаюсь просто сделать «hello-world», чтобы начать, но мне кажется, что документации не хватает.

Я следил за «началом» с проверками: https://sensuapp.org/docs/0.20/getting-started-with-checks, и кажется, что на сервере все в правильном месте.

Я пытаюсь установить следующий плагин сообщества, но у них есть универсальная инструкция для всех плагинов сообщества. В инструкции к плагину есть файл json, но не сказано, куда его положить... https://github.com/sensu-plugins/sensu-plugins-slack

Вот как выглядит мой check_cron.json (я пробовал 2 метода, 1 из другого источника, отличного от Sensu):

{
    "checks": {
      "cron_checks": {
        "handlers": ["default", "slack"],
        "command": "/etc/sensu/plugins/check-procs.rb -p cron -C 1 ",
        "interval": 60,      "subscribers": ["webservers"]
      },
      "cron": {
        "handlers": ["default", "slack"],
        "command": "/etc/sensu/plugins/check-procs.rb -p cron",
        "subscribers": [
            "production",
            "webservers",
        ],
        "interval": 60
      }
    }
  }

Я перезапустил свой сервер после внесения изменений. Я предполагаю, что этот cron будет срабатывать каждую минуту и ​​вызывать плагин уведомлений slack, но не знаю, что мне не хватает, или куда поместить документ .json из «документации» плагина Slack https://github.com/sensu-plugins/sensu-plugins-slack

Любая помощь получить меня в правильном направлении?


person benishky    schedule 22.10.2015    source источник


Ответы (4)


Вам нужен обработчик на сервере Sensu, который отправит запрос в Slack. Вы создали это? Если да, пожалуйста, опубликуйте его содержание.

person Dennis Winter    schedule 09.11.2015

Так что я просто решил это. benishkey предоставил решение по ссылке, однако просто на случай, если кто-нибудь столкнется с этим и ссылка не работает, я подумал, что добавлю решение.

-пользователь github Евгений-Чоу:

Конфигурация обработчика Slack должна называться по-другому. Попробуйте JSON ниже. Я переименовал конфигурацию Slack для каждой среды, а затем указал обработчику соответствующую конфигурацию с помощью -j config_name.

{
  "handlers": {
    "slack-staging": {
      "type": "pipe",
      "command": "/usr/local/bin/handler-slack.rb -j slack-staging",
      "severites": ["critical", "unknown"]
    }
  },
  "slack-staging": {
    "webhook_url": "https://hooks.slack.com/services/...",
    "template" : ""
  }
}


{
  "handlers": {
    "slack-production": {
      "type": "pipe",
      "command": "/usr/local/bin/handler-slack.rb -j slack-production",
      "severites": ["critical", "unknown"]
    }
  },
  "slack-production": {
    "webhook_url": "https://hooks.slack.com/services/...",
    "template" : ""
  }
}

Я добавил файл handler-slack.rb в свои чеки и сослался на него оттуда, потому что его не было в моей папке /usr/local/bin/

person Electronicks    schedule 17.02.2018

Я столкнулся с той же проблемой, поэтому ответ уже дан, но, возможно, поможет кому-то в будущем,

Сначала установите плагин sensu slack.

/opt/sensu/embedded/bin/gem install sensu-plugins-slack

Затем создайте файл конфигурации обработчика.

   vim /etc/sensu/conf.d/slack-handler.json

handler-slack.rb https://github.com/sensu-plugins/sensu-plugins-slack/blob/master/bin/handler-slack.rb

{
    "handlers": {
        "slack": {
            "type": "pipe",
            "command": "/opt/sensu/embedded/bin/handler-slack.rb",
            "severites": ["critical", "unknown"]
        }
    },
    "slack": {
        "webhook_url": "https://your_webhook.com/abc",
        "template" : ""
    }
}  
person Adiii    schedule 17.04.2019

Я нашел ответ в разделе «проблемы» в Git https://github.com/sensu-plugins/sensu-plugins-slack/issues/7

person benishky    schedule 10.11.2015
comment
Пожалуйста, напишите фактический ответ вместо ссылки, так как ссылка может сломаться. - person basickarl; 20.02.2016