ZABBIX Forums  

Go Back   ZABBIX Forums > Zabbix in Your Language > На русском языке

Reply
 
Thread Tools Display Modes
  #1  
Old 06-12-2017, 12:26
constantine.a.v constantine.a.v is offline
Junior Member
 
Join Date: Oct 2014
Posts: 9
Default Сравнение значений макросов в триггере

Добрый день. Не пойму как сравнивать макросы в триггере.
Например:
{#IFNAME} = {$EXT_IFNAME} - не работает т.к. сравнивает как я понял только числовые значения.
{#IFNAME}.str({$EXT_IFNAME}) - выдает ошибку синтаксиса. Как правильно делать?
Спасибо.
Reply With Quote
  #2  
Old 06-12-2017, 13:31
rugo rugo is offline
Junior Member
 
Join Date: Apr 2013
Location: Saint-Petersburg
Posts: 24
Default

Наверное нужно так
Code:
{#IFNAME}.str({$EXT_IFNAME},1)
или
Code:
{#IFNAME}.str({$EXT_IFNAME},#1)
Только str смотрит вхождение подстроки в строку.
Если нужно сравнение, то смотрите функцию diff https://www.zabbix.com/forum/showthread.php?t=21421
Подробнее про функции https://www.zabbix.com/documentation...gers/functions
Reply With Quote
  #3  
Old 06-12-2017, 13:38
constantine.a.v constantine.a.v is offline
Junior Member
 
Join Date: Oct 2014
Posts: 9
Default

Нет. Так не работает
Некорректное выражение триггера. Проверьте часть выражения начиная с "}.str({$EXT_IFNAME},#1)".

Не могу понять как заставить работать и вообще возможно ли это.
Reply With Quote
  #4  
Old 06-12-2017, 14:29
Semiadmin Semiadmin is offline
Senior Member
 
Join Date: Oct 2014
Location: Moscow, Russia
Posts: 501
Send a message via Skype™ to Semiadmin
Default

{#IFNAME} - это макрос, полученный от LLD. В отличие от пользовательского макроса {$EXT_IFNAME}, в чистом виде использовать его в триггерах нельзя.
Если проверка совпадения имени интерфейса с полученным от LLD - не самоцель, а дополнительное условие в триггере, то иожно использовать User macros with context
https://www.zabbix.com/documentation...macro_contexts
Reply With Quote
  #5  
Old 08-12-2017, 10:59
constantine.a.v constantine.a.v is offline
Junior Member
 
Join Date: Oct 2014
Posts: 9
Default

В каком сымысле в чистом виде? я использую это в прототипе триггера и там это как раз вполне уместно. А вот про контексты - я не совсем понял. Что мне это даст?
Reply With Quote
  #6  
Old 08-12-2017, 11:33
Semiadmin Semiadmin is offline
Senior Member
 
Join Date: Oct 2014
Location: Moscow, Russia
Posts: 501
Send a message via Skype™ to Semiadmin
Default

Quote:
Originally Posted by constantine.a.v View Post
В каком сымысле в чистом виде? я использую это в прототипе триггера и там это как раз вполне уместно. А вот про контексты - я не совсем понял. Что мне это даст?
В том смысле, что вы пытаетесь применить триггерную функцию str не к прототипу айтема, а к самому макросу {#IFNAME}.
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 12:07.