Ad Widget

Collapse

Регулярные выражения

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • alex-aks
    Junior Member
    • Jul 2013
    • 3

    #1

    Регулярные выражения

    Добрый день!

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

    Небольшой пример. К примеру я настроил обнаружение "net.if.discovery", при помощи простых регулярных выражений, можно убрать не нужные нам интерфейсы:


    В случае с Hyper-V, этих интерфейсов может быть под 30 и каждый добавлять в исключения не очень удобно.
    Хотелось бы составить белый список интерфейсов.
    Регулярка в одну строку не подходит(eth[0-9]|venet[0-9]|bond[0-9]*), слишком громоздкая.

    Спасибо!
    Attached Files
  • ArtemK
    Senior Member
    • May 2013
    • 232

    #2
    В смысле громоздкая? Регулярка съедает всю память на сервере? Если вам нужен whitelist, поставьте условие для регулярки Result is True.

    У меня, например, в том же самом net if discovery есть регулярка
    Code:
    (Loopback|Packet Scheduler|LightWeight Filter|WAN Miniport|RAS Async|Teredo|Microsoft Kernel Debug|Microsoft ISATAP|isatap\.)
    довольно длинная, но кушать не просит?

    В общем не понимаю вопроса, вам, как говорится, шашечки или ехать?
    Last edited by ArtemK; 19-07-2013, 19:51.

    Comment

    • alex-aks
      Junior Member
      • Jul 2013
      • 3

      #3
      Originally posted by ArtemK
      В смысле громоздкая? Регулярка съедает всю память на сервере? Если вам нужен whitelist, поставьте условие для регулярки Result is True.

      У меня, например, в том же самом net if discovery есть регулярка
      Code:
      (Loopback|Packet Scheduler|LightWeight Filter|WAN Miniport|RAS Async|Teredo|Microsoft Kernel Debug|Microsoft ISATAP|isatap\.)
      довольно длинная, но кушать не просит?

      В общем не понимаю вопроса, вам, как говорится, шашечки или ехать?

      Благодарю за ответ. С памятью все хорошо, проблема чисто в эстетике(да-да, перфекционизм, несимметричные щербатые котлы в аду).
      Условие "Result is True" не подходит, вот пример:

      Комбинированный результат выдает "Ложь".

      С "Result is True" не получится сделать белый список в несколько строк. В итоге необходимо делать кучу разных выражений "Result is False" или писать белый список "Result is True" в одну строку.

      Этот список приходится копировать в текстовик и там уже редактировать:
      Code:
      ^(bacula-fd|ekrn|EhttpSrv|dns|dhcpserver|PCNS1|NTDS|gpsvc|Schedule|Dfs|DFSR|LanmanWorkstation|MSSQL\$SQLEXPRESS|MSSQL\$SQL\_2008|SQLWriter|1C\:Enterprise\ 8\.2\ Server\ Agent)$
      Attached Files

      Comment

      • ArtemK
        Senior Member
        • May 2013
        • 232

        #4
        Судя по всему поменять логику на expression || expression не получится, видимо zabbix всегда считает expression && expression. По крайней мере я не нашёл как. Поделитесь рецептом, если найдёте решение

        Похоже что за перфекционизм надо платить (разрабам на доработку фичи)

        Comment

        Working...