<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Формирование Alarm при наступлении порогового количества событий]]></title><description><![CDATA[<p dir="auto">Сформулировать одним словом не могу, попробую описать:</p>
<p dir="auto">Оборудование ( коммутатор ) присылает SNMP Trap о неуспешной авторизации пользователя который подключается к удаленной консоли. В целом это нормально, так как сменив пароль я еще в течении двух трех дней ввожу старый по привычке. Но если количество таких trap`ов превышает например 10 в час тут стоит подумать и посмотреть.</p>
<p dir="auto">Было бы не плохо формировать аларм при достижении некого критического количество событий, так же было бы не плохо если бы это количество можно было бы считать не в рамках одной ноды, а вообще.</p>
<p dir="auto">Опять же, если кто-то шарится по всей сети пытаясь авторизоваться на железе. В этом случае сообщения будут приходить от разных нод, но все равно ситуация интересная.</p>
]]></description><link>https://forum.netxms.org/topic/4907/формирование-alarm-при-наступлении-порогового-количества-событий</link><generator>RSS for Node</generator><lastBuildDate>Fri, 13 Nov 2026 22:26:47 GMT</lastBuildDate><atom:link href="https://forum.netxms.org/topic/4907.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 06 Feb 2017 08:15:32 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Формирование Alarm при наступлении порогового количества событий on Wed, 15 Feb 2017 14:40:17 GMT]]></title><description><![CDATA[<p dir="auto">Можно но сложно.<br />
В EPP нужно написать скрипт который (во время прихода события о неправильном логине) будет сохранять список пришедших трапов за последний час в строку и в случае если их было больше 10 генерить другое событие который уже будет создавать аларм. Строку можно хранить в Situations, которые в релизе 2.1-M3 мы заменим на PersistentStorage. Если в NXSL использовать посик Situations по имени, то переход на PersistentStorage будет не заметен.<br />
Вот пример который делает похожую задачу в пределах 1 узла и хранит значения в CustomAttribute узла:</p>
<p dir="auto">array attr;</p>
<p dir="auto">for (i = 0; i &lt; 5; i++)<br />
{<br />
    attr[i] = GetCustomAttribute($node, "collectedEventTime" . i);<br />
}</p>
<p dir="auto">step = GetCustomAttribute($node, "collectedEventStep");</p>
<p dir="auto">for (i = 0; i &lt; 5; i++) {<br />
    if(attr[i] == null)<br />
    {<br />
        SetCustomAttribute($node, "collectedEventTime" . i, time());<br />
        SetCustomAttribute($node, "collectedEventStep", i);<br />
        return;<br />
    }<br />
}</p>
<p dir="auto">step++;<br />
if(step &gt; 4)<br />
    step = 0;</p>
<p dir="auto">//Cehck that value that we will change occured more than 5 minutes ago<br />
if((time() - attr[step]) &lt; 300)<br />
{<br />
    //generate alarm<br />
    PostEvent($node, "MARK_EVENT_AS_CRITICAL", null, "Event marked as critical");<br />
}</p>
<p dir="auto">//set new time value<br />
SetCustomAttribute($node, "collectedEventTime" . step, time());<br />
SetCustomAttribute($node, "collectedEventStep", step);</p>
]]></description><link>https://forum.netxms.org/post/21853</link><guid isPermaLink="true">https://forum.netxms.org/post/21853</guid><dc:creator><![CDATA[zev]]></dc:creator><pubDate>Wed, 15 Feb 2017 14:40:17 GMT</pubDate></item></channel></rss>