Строим график из syslog с помощью регулярных выражений?

Добрый день, хабражители!


Дано:

Debian сервер,

утилита скидывающая температуру устройства в syslog


Записи в логе выглядят так:


Apr 30 14:28:41 user montbc[22304]: DEV0 62.0C 500RPM

Apr 30 14:28:42 user montbc[22304]: DEV0 63.0C 500RPM

Apr 30 14:28:43 user montbc[22304]: DEV0 63.0C 500RPM

Apr 30 14:28:44 user montbc[22304]: DEV0 61.0C 500RPM


Задача построить график температуры устройства

Заранее спасибо за помощь.

Update: частота RPM тоже меняется, но нам она не нужна.


P.S. В collectd задача должна решаться с помощью плагина tail, но там нужно знать регулярные выражения. А у меня с ними беда.

Смотрел официальное руководство по плагину tail, но явного примера по моей задаче увы не нашёл.


Мой вариант ниже вообще не даёт никаких данных в график 8(. Прочие графики формируются успешно (sensors, df и т.д.)

GNU nano 2.2.6 Файл: /etc/collectd/collectd.conf


LoadPlugin tail

<Plugin «tail»>

<File "/var/log/syslog">

Instance «Temperature»

Regex «DEV0 (\d+).0C»

DSType «GaugeLast»

Type «gauge»

Instance «tbc»





UPDATE


Решение оказалось простым


LoadPlugin tail

<Plugin «tail»>

<File "/var/log/syslog">

Instance «Temperature»

Regex ": DEV0 ([0-9]+).0C"

DSType «GaugeLast»

Type «temperature»

Instance «DEV 0»


  • Вопрос задан
  • 3571 просмотр
Пригласить эксперта
Ответы на вопрос 1
@TeiSinTai
А может, попробовать так:
<Plugin "tail">
  <File "/var/log/syslog">
    Instance "Temperature"
    <Match>
      Regex "DEV0\S+(\d+)\.0C"
      DSType "GaugeLast"
      Type "gauge"
      Instance "tbc"
    </Match>
  </File>
</Plugin>
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы