2 Replies Latest reply on Feb 9, 2015 12:56 PM by lgferrao

    AFAttribute is not supported in AFEventPipe




      I have to process all values from many (thousands) AFAttributes. So, I chose to use AFEventPipe (PI AF Client 2014 R2 - to sign these attributes and get all their values.


      However, some of these attributes aren't supported to be signed in AFEventPipe.


      One example is an attribute configured in PI System Explorer as:



      I saw that the return of the AFEventPipe.AddSignups gives me a list of attributes that couldn't be signed.


      I want to know what is the best strategy to handle these attributes? The idea is to get their values using a pooling strategy? There is another option (because making pooling is not much performatic)?


      I have more than one thousand attributes in this situation (that doesn't supported by AFEventPipe), so performance is an important issue to me.


      I want to know about AF SDK 2.7: there is some change in this version that could address this problem? If yes, is there some expectation (date) to have a production version?


      Thank you in advance!

        • Re: AFAttribute is not supported in AFEventPipe
          Mike Zboray

          Fundamentally those attributes have values that depend on the query time, so an event pipe is not all that meaningful in terms of telling you that a value changed. AFAIK, there is no update to AF 2.7 that would fix this.


          Just polling the attribute when you need it is one option. But again the window is moving based on the current time, so the value can change even if there is no new data.


          A more sophisticated strategy is to get the underlying PI point and monitor that via the event pipe. When that receives a value you go and retrieve the value from the attribute. So getting a value over the event pipe doesn't indicate a new value for the attribute. It is just a signal that the attribute should be queried again.

          1 of 1 people found this helpful
            • Re: AFAttribute is not supported in AFEventPipe

              Hi Mike !


              Your idea is very interesting !


              However, there are another kinds of attributes not supported by eventpipe that depend on more complicated scenarios, like rollups...


              So, I think that use two strategies (eventpipe and pooling when eventpipe doesn't work) will be more easy to support and mantain...


              Thanks for your help !