Правило базы событий

Я новичок в Drools Fusion, я не могу создать правило для следующего условия

  1. Прочитайте файл журнала сервера с (дата, сообщение об ошибке и т. д.)
  2. Если найдено Тип события: ОШИБКА с Сообщением о событии: "Ошибка памяти", должно инициироваться какое-то событие (на данный момент SOP)
  3. Еще один (с входящим) 1 час не должен инициировать событие для того же сообщения о событии и типа события (если оно найдено в файле журнала)
  4. Через 1 час, если он нашел то же самое, он должен вызвать событие

Примечание. Необходимо использовать те же дату и время, указанные в файле журнала.

Пожалуйста, сделайте необходимое для того же.


person Mohankumar D    schedule 16.07.2013    source источник


Ответы (1)


Я не уверен, что именно вы ищете. Я отвечу концептуально. Я предполагаю, что вы пытаетесь сделать все в рамках drools.

  1. Чтобы слюни постоянно были в курсе журнала сервера, вам необходимо запустить сеанс знаний с отслеживанием состояния и постоянно вставлять в него новые факты. Эти факты будут получены из журнала сервера.

  2. Похоже, вы хотите поговорить о событиях в вашей модели. Создайте класс Event. Для этого примера класс, вероятно, должен иметь поля «тип» и «сообщение». Предположительно, вы бы вставили новые объекты событий, используя код, который постоянно получает информацию из журнала сервера (читая файл, через REST или что-то еще).

  3. Чтобы реализовать логику, основанную на времени, вы можете использовать выражения cron. Вы также можете использовать Календарь в более поздних версиях drools. Это краткий пример того, как это сделать с помощью cron.

person melchoir55    schedule 18.01.2014