rsyslog
Ansible роль "papanito.rsyslog"
Ansible роль для пересылки syslog в лог-сервис, такой как Loggly.com или Logz.io. Роль также пересылает логи systemd в syslog. Подробности о конфигурации syslog можно найти здесь:
Примечание
Эта роль основана на роле от jmcvetta/ansible-loggly
Требования
Необходима учетная запись в сервисе логирования и API токен для этой учетной записи, чтобы можно было отправлять данные. Смотрите документацию по ссылкам выше.
NewRelic.com требует учетную запись в американском дата-центре, европейский дата-центр не будет работать.
Переменные роли
Существуют общие переменные роли и специфические для сервиса. Большинство переменных должны работать (по тестам). Таким образом, рекомендуется определять только эти переменные:
Параметр | Описание | Значение по умолчанию |
---|---|---|
rsyslog_srv |
Установите это для использования правильного сервиса | logz.io |
rsyslog_tls |
true или false , если хотите использовать обычный текст |
true |
rsyslog_tag |
syslog |
|
rsyslog_token |
Токен для аутентификации на rsyslog_srv - пожалуйста, установите его в вашем плейбуке |
YOUR_TOKEN_GOES_HERE |
rsyslog_cert |
Имя сертификата для безопасного соединения | rsyslog.crt |
rsyslog_action_queue_file_name |
Уникальный префикс имени для файлов очереди | fwdRule1 |
rsyslog_action_queue_max_disk_space |
Ограничение по пространству (используйте как можно больше) | 1g |
rsyslog_action_queue_save_on_shutdown |
Сохранять сообщения на диск при отключении | on |
rsyslog_action_queue_action_type |
Тип очереди действий | LinkedList |
rsyslog_action_resume_retry_count |
Количество повторных попыток, если хост недоступен, -1 означает бесконечные попытки |
-1 |
rsyslog_additional_config |
Список дополнительных настроек, таких как authpriv.* /var/log/auth.log |
'' |
Зависимости
н/д
Тестирование
Предполагается, что у вас уже установлены Ruby и Bundler.
bundle install # Нужно выполнить только один раз
bundle exec kitchen test
Вы можете запустить тестовый плейбук, если используете Hetzner Cloud:
ANSIBLE_HOST_KEY_CHECKING=false HCLOUD_TOKEN=$HCLOUD_DEV ansible-playbook tests/newrelic.com.yml -i tests/inventory --vault-pass-file $ANSIBLE_VAULT_FILE -e stop_server=false
Пример плейбука
- name: Переслать серверные логи в службу rsyslog
hosts: "servers"
vars:
rsyslog_srv: logz.io
rsyslog_tls: true
rsyslog_tag: syslog
rsyslog_token: xxxxxxxxxxxxxxxxxxxxxxxx
roles:
- papanito.rsyslog
Лицензия
Это свободное программное обеспечение, выпущенное под условиями лицензии Apache v2.
ansible-galaxy install papanito/ansible-role-rsyslog