Does the AlertExecEnabled have any function anymore? We used to use to “turn off” alarms, but it doesn’t appear to do that anymore.
What I have attempted to do is mimic the behavior. I did this by creating a memory tag that I have binded the AlarmEnable property to. It doesn’t seem to work though. Should this work?
So I tried it out, and the AlertExecEnabled property does still seem to work. However, it simply prevents execution- any outstanding alarms won’t be modified. In other words, if the alarm was active when you disabled execution, it will stay so in the status table. Is that perhaps what you’re seeing? Or are you actually seeing alarms being generated?
I have the alarm disabled, but it is still showing up - it is linked the same way yours is. Text is bold and everything. Anything else to check?
It’s showing up, but it’s not changing, correct? Like, if you change the value to what would be active or not, you don’t see that reflected, do you?
I think that technically the alarm isn’t evaluating, but changing the enabled bit isn’t “unregistering” the alarm. I’m not exactly sure it should, but then on the other hand, having alarms visible that are currently “disabled” doesn’t quite seem correct. So, I’ll have to see what we can do.
It is doing that and if I disable the alarm it acts as if it is enabled as well. If it isn’t active and disabled and the alarm condition goes true it still shows up in my summary.
Oh, so you’re saying, it’s just not working. Could you perhaps do the following: disable all tags except for the ones involved in this test. Then, in the gateway, go to Consoles>Levels and turn “Alarming.Execution” to TRACE. Let it run for a few seconds, try disabling/enable the alertexec, etc. Then turn it back to INFO and upload the wrapper.log file, or a snippet of it. Each evaluation of the alarm should say what it was doing, and I think it’ll say if the bound tag can’t be found.
Well I don’t think I even need to do that… I restarted the gateway and got a whole bunch of warnings for all my alarm tags.
I went and deleted all the bindings and the warnings went away. I also changed their scan classes, but now I think I’m all messed up… Now when alarms clear they just disappear and never come back and my diagnostic ones don’t show up…
I did as you asked - once an alarm gets released nothing ever happens to it ever again no matter what combination I do. I went from beta4 to beta6 and changed the scan class to leased instead of direct. that is all I have done on my end. We could arrange a web session if that would help.
See the attached log - I’m getting null pointer exceptions from the alarms.
logs.bin (4).gz (990 KB)
Has anyone had a chance to dive into this?
I wasn’t able to replicate that error exactly (it might have to do with redundancy, I didn’t check that), but we did fix a few things that could lead to those. We’re trying to get another update up this afternoon.
We put up a new version last night, could you update to that and see if you still run into these issues?
Things seem to be working - just one question on the enable/disable alarm. When an alarm is disabled is just seems to freeze in whatever state it was in when it was disabled. Is that the intent? I thought once disabled it would stop showing up in the alarm summary and stop being evaluated. If it shows active and I disable it stays active even though the alarm may have cleared. Thanks.
Yes, that is the way it stands now. It is how the system used to treat the “AlertExecEnabled” property (which still works, in a similar but different way than the Alarm’s “enabled” property).
However, when I was playing around with it earlier in this thread’s life, it struck me that that behavior doesn’t really seem correct. I think, like you said, that when an alarm or the alarm exec is disabled, all events should probably disappear.
Will that happen? If so I will leave my code as is.