NetXMS Support Forum

English Support => General Support => Topic started by: zw_gs on September 21, 2023, 12:24:11 AM

Title: Event Processing Filter Script not filtering
Post by: zw_gs on September 21, 2023, 12:24:11 AM
Hello,
I would love a pointer. Nodes in our system have a custom attribute "map" and I would like to filter event processing rules based on this value. What I have setup does not work. The filter passes all events, regardless of the custom attribute value.

Does my filter look right? I would expect that if I've screwed it up, it would pass 0 events, but for some reason it passes everything.

Thanks a bunch!

Title: Re: Event Processing Filter Script not filtering
Post by: zw_gs on September 21, 2023, 12:26:39 AM
Capture.PNG
Title: Re: Event Processing Filter Script not filtering
Post by: zw_gs on September 21, 2023, 03:46:53 AM
Okay I think I've solved my problem. Some nodes are missing the attribute.


if (GetCustomAttribute($node, "map") like "[RTH]*") {
    return true;
}
return false;


Into

map_attr = GetCustomAttribute($node, "map");

if (map_attr != null && map_attr like "[RTH]*") {
    return true;
}
return false;


I assume 'null like "[RTH]*"' produces an exception. Though I would think an exception in the filter script would be equivalent to accept=false, but it seems exception means accept=true
Title: Re: Event Processing Filter Script not filtering
Post by: Filipp Sudanov on September 25, 2023, 02:43:26 PM
Yes, currently error is treated as true, which is not good. Will be changed to false in next release.
Title: Re: Event Processing Filter Script not filtering
Post by: zw_gs on September 26, 2023, 08:19:01 PM
Great, thanks for all your hard work. We are getting into the system and it's really great, lots of rooms for scripts and customization!