4 Replies Latest reply on Dec 6, 2016 3:27 PM by avanfosson

    Processbook identification

    matthew.rivett

      We have very large 'video walls' running many copies of ProcessBook.  Our users develop their own displays and this usually works fine except when it comes to datasets.  Most of the users aren't programmers and creating a good dataset requires some programming knowledge.  So every now and then someone will create a bad dataset (or in one case a display with a huge number of bad datasets) which causes pibasess to get busy and starts throwing tons of errors like this:

       

      [Server] piserver[Collective] picollective[ID] 0 [Time] 3/26/2010 7:23:23 AM [Program] piarcmgr [Priority] 10 [ProcessID] 0 [Severity] None
      User query failed, connection: 8212, ptid: 0, type: expcalc, start: 26-Mar-10 06:23:27.91400, end: 26-Mar-10 07:23:27.91400, cnt: 5, mode: 8, status: [-12301] Performance Equation parsing error

       

      I know how to use the connectionid to identify which computer the error is coming from.  Does anyone know of a way to identify which copy of processbook is the one causing the problem?  I've asked for a new performance counter to be added to processbook that would contain a delimited list of displays open in processbook.  Anyone have ideas?

        • Re: Processbook identification

          Matt Rivett

          Does anyone know of a way to identify which copy of processbook is the one causing the problem?
          This would definitely require some client-side scripting...  e.g. some kind of "ProcessBook monitoring application" or some ProcessBook add-in that stores that information somewhere.

           

          Matt Rivett

          I've asked for a new performance counter to be added to processbook that would contain a delimited list of displays open in processbook
          Windows Performance Counters expose numerical values, no text strings. If you really want to use some Windows engine to perform this monitoring activity, the closest thing would be the Windows Management Instrumentation (WMI) infrastructure - but this may be getting a little too big or complex for your needs

            • Re: Processbook identification

              Similar to what Steve mentioned, I have only seen one client using a monitoring system on a series of controlled displays (users can't modify the displays anyway) - it just writes the windows account and name of display/workbook to the PI Message Log.  It was just a way to track what displays were being used the most, therefore they could be made more 'efficient' due to heavy use.

               

              Only thing I could think of is if you have the IP address of the machine, check the user account logged on to the machine and check the registry on the machine for most recetly used display files for ProcessBook.  If it is a saved display then you should be able to track it.

                • Re: Processbook identification
                  matthew.rivett

                  I never took the time to learn WMI (although I keep thinking the WMI Interface could provide some useful server information).

                   

                  I could probably create a string tag and a PB addin that would write computer name, username, and display to the tag.  Deploying the addin to each computer wouldn't be fun.

                   

                  I unfortunately don't have admin rights on all the desktops so I wouldn't be able to check the registry.

                   

                  Thanks for the ideas.

              • Re: Processbook identification
                avanfosson

                For anyone else reading this post, if you are getting a [-12301]  Performance Equation parsing error, then check out KB01521 - Common causes of error -12301 Performance Equation parsing error.