Set Archiving Event Filters on State Attribute

Hi,

I am trying to set an Archive Event filter for the State Attribute (of any device - i.e TangoTest)

My goal is to set an Absolute filter = 1 to the State in order to archive only when we have a State change.

Update:

Actually I found something in the code I don't know if is 100% relevant:

https://github.com/tango-controls/cppTango/blob/tango-9-lts/cppapi/server/attribute.cpp#L419

but it seems that it is not allowed to set absolute/relative filters it for DEV_STATE data types.

So my question is:

Why there is such a restriction? Is it possible to "bypass" it?

Cheers,

Vasilis
Edited 3 years ago
Hi Vasilis,
I'm not sure if you're referring to event thresholds or to event filters. Event filters have been dropped since Tango release 8, e.g. with the adoption of 0MQ. If you refer to event thresholds, it is not allowed to set an event threshold on DEV_STATE data type, as the Tango core uses an "automatic" threshold with value 1. You just need to enable polling for the State attribute to send State change/archive events. If you do not specify an archive event period, Tango will take care of sending events only when the State changes.
Cheers,
Lorenzo
Edited 3 years ago
Hi Lorenzo,

Thank you for your answer, I was referring thresholds as you correctly guessed (more specifically for the archive_abs_change attribute property).
I wasn't aware of the Tango core automatic threshold so I guess I should not care for any archive_abs_change/archive_rel_change settings when I archive State attribute.

Thanks!

Vasilis
 
Register or login to create to post a reply.