Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: Отправка сообщения по событию  (Прочитано 898 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Ввысь

  • Автор темы
  • Активист
  • *
  • Сообщений: 324
    • Просмотр профиля
Отправка сообщения по событию
« : 02 Март 2016, 11:32:41 »
Здравствуйте.
Есть скрипт, при срабатывании он в лог пишет строку. Как настроить отправку эл. письма по этому событию?

Что-то типа такого:
Сработал скпипт -> запись в лог -> отправка сообщения.

Стоит mutt, отправляет всякое информационного характера на почту. Хотел к нему присоседиться.
Спасибо.

Оффлайн funk2256

  • Активист
  • *
  • Сообщений: 430
  • Arch + Xfce
    • Просмотр профиля
Re: Отправка сообщения по событию
« Ответ #1 : 02 Март 2016, 11:53:46 »
Здравствуйте.
Есть скрипт, при срабатывании он в лог пишет строку. Как настроить отправку эл. письма по этому событию?

Что-то типа такого:
Сработал скпипт -> запись в лог -> отправка сообщения.

Стоит mutt, отправляет всякое информационного характера на почту. Хотел к нему присоседиться.
Спасибо.

Ну а скрипт можно? в мы же не на кофейной гуще гадаем.
Feci quod potui, faciant meliora potentes.(Я сделал всё, что смог, пусть те, кто смогут, сделают лучше)
Новичкам
Шпаргалка команд

Оффлайн thunderamur

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 6748
  • Ubuntu 16.04
    • Просмотр профиля
Re: Отправка сообщения по событию
« Ответ #2 : 02 Март 2016, 11:55:17 »
Ввысь,
ну и засунь свой mutt в скрипт, в чем проблема то?

Оффлайн Ввысь

  • Автор темы
  • Активист
  • *
  • Сообщений: 324
    • Просмотр профиля
Re: Отправка сообщения по событию
« Ответ #3 : 02 Март 2016, 12:17:12 »
funk2256,
(Нажмите, чтобы показать/скрыть)

Запускается периодически, хочу получать письмо о новой записи. Могу получать файл целиком, но хочется именно уведомление.

thunderamur, а как увязать появление новой записи и mutt?

Punko

  • Гость
Re: Отправка сообщения по событию
« Ответ #4 : 02 Март 2016, 14:06:29 »
Ввысь,
Ну можно diff"ом сравнивать файлы и отправлять уведомление.
Хотя наверняка можно красивее.

Оффлайн funk2256

  • Активист
  • *
  • Сообщений: 430
  • Arch + Xfce
    • Просмотр профиля
Re: Отправка сообщения по событию
« Ответ #5 : 02 Март 2016, 14:35:41 »
А если такой костыль?
ssmtp + logcheck?

Пользователь решил продолжить мысль 02 Март 2016, 14:37:51:
+ поправка logcheck.logfiles для проверки нужного файла
/usr/local/etc/logcheck/logcheck.logfiles
« Последнее редактирование: 02 Март 2016, 14:37:51 от funk2256 »
Feci quod potui, faciant meliora potentes.(Я сделал всё, что смог, пусть те, кто смогут, сделают лучше)
Новичкам
Шпаргалка команд

Оффлайн Azure

  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 5660
  • elementaryOS 0.4 Loki, i3wm on Debian9
    • Просмотр профиля
Re: Отправка сообщения по событию
« Ответ #6 : 02 Март 2016, 15:37:27 »
tail -f файлвыводит только новые строчки
Кроме того для мониторинга существует watch.
В Линукс можно сделать ВСЁ что угодно, достаточно знать КАК !

Оффлайн thunderamur

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 6748
  • Ubuntu 16.04
    • Просмотр профиля
Re: Отправка сообщения по событию
« Ответ #7 : 03 Март 2016, 06:23:43 »
funk2256,
(Нажмите, чтобы показать/скрыть)

Запускается периодически, хочу получать письмо о новой записи. Могу получать файл целиком, но хочется именно уведомление.

thunderamur, а как увязать появление новой записи и mutt?

Может быть я чего-то не понимаю, но почему нельзя просто засунуть mutt следующей строчкой?
#!/bin/bash
ip=`grep -E -o "([0-9]{1,3}[\.]){3}[0-9]{1,3}" /var/log/auth.log`
echo $ip >> /home/q/ip.txt
echo $ip | mutt -s "IP" mail@yandex.ru

Пользователь решил продолжить мысль 03 Март 2016, 06:24:23:
И да, нафига в скрипте sudo, если они итак от рута выполняется, насколько я понял.

Оффлайн jura12

  • Старожил
  • *
  • Сообщений: 1183
  • debian 9, manjaro
    • Просмотр профиля
Re: Отправка сообщения по событию
« Ответ #8 : 03 Март 2016, 06:46:16 »
можно отправить почту из командной строки с помощью mailutils
$ mail -s "Hello World" user@yourmaildomain.com

в 15.10 это зовется как я понимаю /usr/bin/mail.mailutils
сопротивление бессполезно

Punko

  • Гость
Re: Отправка сообщения по событию
« Ответ #9 : 03 Март 2016, 12:55:58 »
thunderamur,
Тут ТС хочет отправлять только если файл поменялся. Надо впихнуть сверку файлов и в условие - отправку почты.
jura12,
Да, это работает, но не так просто - нужно всё это дело настраивать. А если уже есть настроенная утилита, то зачем плодить сущности? =)

Оффлайн thunderamur

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 6748
  • Ubuntu 16.04
    • Просмотр профиля
Re: Отправка сообщения по событию
« Ответ #10 : 03 Март 2016, 15:57:13 »
можно отправить почту из командной строки с помощью mailutils
$ mail -s "Hello World" user@yourmaildomain.com

в 15.10 это зовется как я понимаю /usr/bin/mail.mailutils
ТС написал про mutt, т.е. чем отправлять он не спрашивал. Вопрос ни разу не в этом был.

Пользователь решил продолжить мысль [time]03 Март 2016, 22:00:18[/time]:
Punko,
Т.е. ему нужно только то, что свежее появилось в auth.log?
Тогда я не пойму нафига >> ведь получается, что оно будет писать по нарастающей одно и то же.

Пользователь решил продолжить мысль 03 Март 2016, 16:02:00:
Punko,
А может частота вызова скрипта равна частоте ротации логов, так что одни и те же данные auth.log не попадают в ip.txt. Если так, тогда выриант, представленный выше подходит.
« Последнее редактирование: 03 Март 2016, 16:02:00 от thunderamur »

Punko

  • Гость
Re: Отправка сообщения по событию
« Ответ #11 : 03 Март 2016, 18:01:31 »
thunderamur,


Запускается периодически, хочу получать письмо о новой записи. Могу получать файл целиком, но хочется именно уведомление.

Как я понял по этой записи именно так.
Я бы делал уведомление только при наличии новой записи, а не при каждом
срабатывании скрипта.
ну, или вообще не пользовал велосипеды, а заюзал готовое решение.

 

Страница сгенерирована за 0.062 секунд. Запросов: 24.