NetXMS Support Forum

Russian Support => Общие вопросы => Topic started by: Alex on November 09, 2007, 12:23:49 PM

Title: Syslog
Post by: Alex on November 09, 2007, 12:23:49 PM
Решил ещё прикрутить syslog-сбор. Включил syslog в netxms, перегрузил. Включил tcpdump пакеты видно что идут на 514 по udp. Но в Syslog Browser-е я почему-то не вижу ни одного пришедшего евента. В чем может быть проблема?
Может я че-то где-то не настроил???
Title: Re: Syslog
Post by: Victor Kirhenshtein on November 09, 2007, 12:41:29 PM
A v logah servera nichego net pro oshibki pri starte (naprimer chto ne udalos' sdelat' bind na port 514)? I esche - mozno li prislat' neskol'ko obrazcov soobschenij - esli server ih prinimaet to edinstvennaja prichina po kotoroj oni mogut ne pojavljatsja v loge eto oshibka pri parsinge.
Title: Re: Syslog
Post by: Alex on November 09, 2007, 12:45:57 PM
Ошибок при старте нет. Порт байндится замечательно. По нетстату его видно.
Образцы какого рода сообщений? Тех что я ловлю в tcpdump или же те, что на оборудовании в логах?
Если на оборудовании, то вот:
Nov  9 10:14:32.955: %SYS-5-CONFIG_I: Configured from console by ets on vty0 (IP ADDRESS)
Nov  9 10:18:17.149: %SYS-5-CONFIG_I: Configured from console by ets on vty0 (IP ADDRESS)
Nov  9 10:42:49.899: %SYS-5-CONFIG_I: Configured from console by ets on vty0 (IP ADDRESS)
Nov  9 10:43:23.736: ISDN Dc1/0 SC Q931: TX -> CONNECT pd = 8  callref = 0xCF63
Nov  9 10:43:23.760: ISDN Dc1/0 SC Q931: RX <- CONNECT_ACK pd = 8  callref = 0x4F63
Nov  9 10:43:23.892: ISDN Dc1/0 SC Q931: RX <- DISCONNECT pd = 8  callref = 0x4F66
Title: Re: Syslog
Post by: Victor Kirhenshtein on November 09, 2007, 01:06:00 PM
Esli po setke soobschenija prihodjat tochno takie-ze, to pohoze ponjatno. NetXMS server ne rasschitivaet poluchit' timestamp v vide hh:mm:ss.xxx, shitaet chto timestamp plohoj i otbrasivaet soobschenie. A eto standartnij variant kstati? Ja vrode po RFC delal parsing... No v ljubom sluchae dobavlju obrabotku takogo varianta timestamp'a.
Title: Re: Syslog
Post by: Alex on November 09, 2007, 01:08:56 PM
Такой таймстамп возвращает оборудование под названием Cisco :) Не думаю я что они работают не по RFC. Во всяком случае продукт под название SolarWinds видит такой таймстамп нормально и обрабатывает его.
Title: Re: Syslog
Post by: Victor Kirhenshtein on November 09, 2007, 02:32:07 PM
Citata iz RFC3164 (The BSD syslog Protocol), napisana chelovekom iz Cisco:

Quote
The HEADER contains two fields called the TIMESTAMP and the HOSTNAME.
   The TIMESTAMP will immediately follow the trailing ">" from the PRI
   part and single space characters MUST follow each of the TIMESTAMP
   and HOSTNAME fields.  HOSTNAME will contain the hostname, as it knows
   itself.  If it does not have a hostname, then it will contain its own
   IP address.  If a device has multiple IP addresses, it has usually
   been seen to use the IP address from which the message is
   transmitted.  An alternative to this behavior has also been seen.  In
   that case, a device may be configured to send all messages using a
   single source IP address regardless of the interface from which the
   message is sent.  This will provide a single consistent HOSTNAME for
   all messages sent from a device.

   The TIMESTAMP field is the local time and is in the format of "Mmm dd
   hh:mm:ss" (without the quote marks) where:

         Mmm is the English language abbreviation for the month of the
         year with the first character in uppercase and the other two
         characters in lowercase.  The following are the only acceptable
         values:

         Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec

         dd is the day of the month.  If the day of the month is less
         than 10, then it MUST be represented as a space and then the
         number.  For example, the 7th day of August would be
         represented as "Aug  7", with two spaces between the "g" and
         the "7".

         hh:mm:ss is the local time.  The hour (hh) is represented in a
         24-hour format.  Valid entries are between 00 and 23,
         inclusive.  The minute (mm) and second (ss) entries are between
         00 and 59 inclusive.

   A single space character MUST follow the TIMESTAMP field.

Ni slova pro vozmoznost' takogo formata.
Title: Re: Syslog
Post by: Alex on November 09, 2007, 03:13:48 PM
Понимаю но факт остается фактом :(((

Вот не с железки, а с SolarWinds лог:

MsgID   Active  IP      Hostname        DateTime        Facility        Priority        Message
1302754 Да      MY_IP   myhostname    2007-10-10 15:19:01     184     6       15512: Oct 10 11:19:20.614: %SEC-6-IPACCESSLOGP: list 170
denied tcp IP_A(41928) -> MY_IP(22), 1 packet


Т.е. судя по тому что я вижу, они не парсят пакет.. А превращают его в обычный string и бросают в лог.
Title: Re: Syslog
Post by: Victor Kirhenshtein on November 09, 2007, 03:16:39 PM
Aga, a mi parsim (v osnovnom dlja togo chtobi svjazat' s ob'ektom node), bol'she intellekta - bol'she problem :) Zaregistriroval v bugtracker'e kak issue #199, budu ispravljat'.
Title: Re: Syslog
Post by: Alex on November 09, 2007, 05:37:01 PM
Это все понятно. Значится ждем-с :)
Title: Re: Syslog
Post by: Alex on November 15, 2007, 02:07:06 PM
Есть какие-то продвижения по данному вопросу?
Title: Re: Syslog
Post by: Victor Kirhenshtein on November 16, 2007, 05:47:34 PM
Пока нет, всю неделю не до того было... На выходных займусь.
Title: Re: Syslog
Post by: Victor Kirhenshtein on November 16, 2007, 08:06:52 PM
Vrode ispravil. Esli zamenit' prilozennij fail v src/server/core i peresobrat', to dolzno rabotat'.
Title: Re: Syslog
Post by: Alex on November 16, 2007, 08:35:39 PM
Угу.. Можно включать в следующий релиз. Тему можно закрывать.

P.S.>Осталось разобраться как теперь работать с этим :))) Но это уже другая тема :)
Title: Re: Syslog
Post by: Alex on November 16, 2007, 10:54:40 PM
Поторопился с закрытием :)

Вопросы:
-Можно ли как-то настроить events-ы по приходу Notice, Information, Error сообщений от Syslog-а?
-Просматривать за прошлый месяц,день,час. Имеется в виду фильтр примерно такой же как на графиках.
Title: Re: Syslog
Post by: Victor Kirhenshtein on November 21, 2007, 02:31:09 PM
Пока нельзя. В планах уже давно, но никак руки не доходят...
Title: Re: Syslog
Post by: Alex on November 26, 2007, 10:12:41 AM
Дополнение:
Возможно ли внести понятие размер шрифта, а также возможно редактировать столбцы для вывода? К примеру выводить только 4 столбца: Time, Severity, Hostname, Message. К примеру Facility, Tag мне не нужны.
Title: Re: Syslog
Post by: Alex on December 11, 2007, 07:37:21 PM
Будут какие-то ответы?
Title: Re: Syslog
Post by: Victor Kirhenshtein on December 17, 2007, 02:13:58 PM
Я принял к сведению :) Конечно, все возможно, и со временем обязательно будет.
Title: Re: Syslog
Post by: Alex on November 19, 2008, 12:45:48 PM
Сорри, что поднимаю тему вновь, но честно говоря не совсем понятно как в 0.2.23 отлавливать события пришедшие по Syslog. Можно какой-нить мини-мануальчик хотя бы?
Спасибо заранее.

P.S.> Предыдущие запросы мои по этому вопросу остались.
Title: Re: Syslog
Post by: Victor Kirhenshtein on November 19, 2008, 01:27:20 PM
Quote from: Alex on November 19, 2008, 12:45:48 PM
Сорри, что поднимаю тему вновь, но честно говоря не совсем понятно как в 0.2.23 отлавливать события пришедшие по Syslog. Можно какой-нить мини-мануальчик хотя бы?

Надо через Control Panel -> Syslog Parser написать XML, где описывается, какие записи в syslog превращать в события. Формат этого XML'a описан здесь: https://www.netxms.org/forum/index.php/topic,483.0.html (https://www.netxms.org/forum/index.php/topic,483.0.html). Можно указывать или код, или имя события. Потом делается обработка событий как обычно через event processing policy.

Title: Re: Syslog
Post by: Alex on November 19, 2008, 02:11:04 PM
Что-то почта не отправляется :(
Title: Re: Syslog
Post by: Alex on November 19, 2008, 02:15:47 PM
Пробовал прописать и в другом регистре поисковую строку, не помогает.
Title: Re: Syslog
Post by: Alex on December 15, 2008, 10:34:35 AM
UP!  ??? ::)
Title: Re: Syslog
Post by: Victor Kirhenshtein on December 15, 2008, 12:24:27 PM
Как-то я пропустил этот пост, прошу прощения :) А релиз 0.2.23 так-же себя ведет? Еслт да, пришли пожалуйста оригинальную строку из syslog'a, которая должна создавать событие.
Title: Re: Syslog
Post by: Alex on December 15, 2008, 01:50:48 PM
Виктор, скорее всего я что-то где-то не так делаю. Можете дать хотя бы краткую инструкцию где что и как прописывать?
Title: Re: Syslog
Post by: Victor Kirhenshtein on December 15, 2008, 03:50:18 PM
Да, ошибка в XML. Я сам тоже почему-то не сразу заметил, хотя несколько раз в этот скриншот смотрел :( Пропущен уровень <rules> - правильный XML должен выглядеть так:

<parser>
   <rules>
      <rule>
          <match>error</match>
          <event>SYSLOG_ERROR</event>
      </rule>
   </rules>
</parser>
Title: Re: Syslog
Post by: Victor Kirhenshtein on December 15, 2008, 03:53:19 PM
Кстати, в релизе появилась возможность делать контексты для правил (проверка match только если какое-то другое правило уже выполнилось) - если это интересно, я напишу как настраивать.
Title: Re: Syslog
Post by: Alex on December 15, 2008, 03:59:22 PM
Разумеется интересно  ::)
Title: Re: Syslog
Post by: Alex on December 15, 2008, 04:10:56 PM
Quote from: Victor Kirhenshtein on December 15, 2008, 03:50:18 PM
Да, ошибка в XML. Я сам тоже почему-то не сразу заметил, хотя несколько раз в этот скриншот смотрел :( Пропущен уровень <rules> - правильный XML должен выглядеть так:

<parser>
   <rules>
      <rule>
          <match>error</match>
          <event>SYSLOG_ERROR</event>
      </rule>
   </rules>
</parser>

Не помогает. В Syslog-е появляется запись о том, что пришло событие, а в EventLog и соответственно обрабатывать сообщение не хочет :(
Title: Re: Syslog
Post by: Victor Kirhenshtein on December 15, 2008, 04:33:30 PM
Только что проверил - работает. Но есть один баг - надо рестартить сервер чтобы новая конфигурация syslog-parser'a вступила в силу.
Title: Re: Syslog
Post by: Alex on December 15, 2008, 04:59:35 PM
Хм. Как-то странно.
Сделал правило для сбора статистики кто и когда конфигурил устройство. В правилах на match прописал слово Configured. В итоге как выполняю только эту команду, так получается следующая фигня. NetXMS просто валится, да еще и без объяснения причин. :(
Title: Re: Syslog
Post by: Victor Kirhenshtein on December 15, 2008, 10:52:28 PM
Da, esche odin bug :( Esli server na UNIX'e, to mozno zamenit' syslogd.cpp na prilozennij i peresobrat' - dolzno projti. Esli na Windows, to ja peresoberu binarnik i prishlju.

Title: Re: Syslog
Post by: Alex on December 16, 2008, 09:47:03 AM
У меня Linux, поэтому все заработало. ;D Супер. :o
Осталось только пара вопросов:
Вопрос, можно ли сделать так, чтоб правила Syslog Parser-а применялись без перезагрузки сервера? А то если я даже что-то поменяю, то после изменений (не добавления нового правила даже, а именно изменения существующего) приходится перегружать сервер. :(

и еще одно, если нет ни одного правила в syslog parser-е, то при запуске сервера в лог пишется:
[16-Dec-2008 07:38:09] Cannot initialize syslog parser: no element found at line 1
Title: Re: Syslog
Post by: Victor Kirhenshtein on December 16, 2008, 10:20:55 AM
Ja objazatel'no sdelaju, chtobi izmenenija vstupali v silu. Zapisal eto kak bug v bugtracker, tak cho nadejus' ne zabudu :)
Esli patch budet ne ochen' mashtabnij, to vilozu zdes' faili, kotorie neobhodimo budet pomenjat'.

Soobschenie pri pustom parsere - toze bug, no uze kosmeticheskij. Prosto pri sozdanii parsera ne delaetsja razlichij mezdu pustoj konfiguraciej (chto normal'no), i oshibkoj v xml'e.
Title: Re: Syslog
Post by: Alex on December 16, 2008, 10:32:27 AM
И хотел бы напомнить еще раз о том, что я писал в этой теме:
"-Просматривать за прошлый месяц,день,час. Имеется в виду фильтр примерно такой же как на графиках."
В принципе тогда можно будет закрыть тему Syslog-а раз и навсегда.. Ибо в принципе больше ничего не требуется от него  ::)

Title: Re: Syslog
Post by: zeratyl on July 14, 2010, 01:23:40 PM
Настроил пересылку логов на внутренний syslog сервер NetXMS, в консоле NetXMS видно что логи приходят, но парсинг не происходит, в не зависимости от значения severity, принимаются все логи что отправляются syslog серверу NetXMS. При этом и не срабатывает действие заложенное в конструкции парсера. В чём может быть загвоздка? Схожая конструкция для Windows Event Log работает.

Сам парсер syslog

<parser>
   <rules>
      <rule>
         <severity>15</severity>
         <match>(.*)</match>
         <event params="1">100004</event>
      </rule>
   </rules>
</parser>

в приложенном файле вид окна syslog. И по нему ещё один вопрос: нормально ли что в поле hostname отображается sys, а не действительный hostname машины
Title: Re: Syslog
Post by: Victor Kirhenshtein on July 14, 2010, 04:26:49 PM
Несколько вопросов:
Событие с кодом 100004 существует?
Можно ли как-то увидеть оригинальное syslog сообщение?
Есть ли какие-нибудь ошибки в логе NetXMS сервера?

sys в поле hostname - это баг, исправил.

Title: Re: Syslog
Post by: zeratyl on July 14, 2010, 05:17:28 PM
Событие с кодом 100004 существует, и используется при парсинге Windows Event log. Оно работает.
ошибок в логе NetXMS сервера нет
Оригинальное сообщение Rsyslog:

Jul 14 13:35:58 sys-sv-11 mysqld: 100714 13:35:58 [Warning] Statement may not be safe to log in statement format. Statement: UPDATE smf_log_activity
Jul 14 13:35:58 sys-sv-11 mysqld: #011#011SET
Jul 14 13:35:58 sys-sv-11 mysqld: #011#011#011hits = hits + 1
Jul 14 13:35:58 sys-sv-11 mysqld: #011#011WHERE date = '2010-07-14'

Спасибо вам за программу, чем дальше узнаёшь её возможности тем больше понимаешь что всё логично и удобно.
Title: Re: Syslog
Post by: zeratyl on July 20, 2010, 12:55:23 PM
Ну так есть идеи по этой проблеме?
Title: Re: Syslog
Post by: Victor Kirhenshtein on July 27, 2010, 03:38:18 PM
Вроде разобрался. Источник проблем - именно неправильный парсинг имени хоста. Сервер пытается связать сообщение с объектом узла по имени, и не находит сооответствующий узел, поскольку имя хоста неправильное. На днях выйдет версия 1.0.4, там будут исправления.
Title: Re: Syslog
Post by: zeratyl on August 18, 2010, 10:14:31 AM
Только сейчас удалось проверить. Теперь поля Hostname и tag отображают корректную информацию. Но сама конструкция почему-то не срабатывает, письмо не отправляется. Было бы не плохо понять в чём загвоздка. что посоветуете?
Title: Re: Syslog
Post by: zeratyl on September 03, 2010, 01:24:50 PM
Недавно конструкция сработала, вот только не понятно как механизм работает внутри себя. Одни сообщения обрабатываются, другие нет. Пояснение в приложенном файле, может натолкнёт на решение (сработало то что выделено, а на следующее сообщение система уже не отреагировала)