Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <2017 Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <2017
<== Date ==> <== Thread ==>

Subject: Re: Notification of Archiver Appliance interruptions
From: "Shankar, Murali" <mshankar@slac.stanford.edu>
To: "tech-talk@aps.anl.gov" <tech-talk@aps.anl.gov>
Date: Mon, 18 Sep 2017 23:46:29 +0000
Hi Will, 

   Don't know if this is what you are looking for but there are a couple of extra fields available in the JSON/RAW responses. Here's some info from a couple of months back (this should be cleaned up and added to the documentation).

For example, I just started my dev appserver and asked for recent data. 
You can see that the first sample is from some time ago (date -d @1497486486 = Wed Jun 14 17:28:06 PDT 2017​) and in the second sample we add these headers 
--> cnxlostepsecs ​- This is the server time we lost the connection to the PV
--> cnxregainedepsecs  - The is the server time we regained connection to the PV
--> startup - This lets you know if the connection was lost because of an appliance restart. In the case of an appliance​ restart, we really do not know when we lost the connection so the cnxlost is almost always 0.

$ curl -s "http://localhost:17665/retrieval/data/getData.json?pv=mshankar:arch:sine&from=2017-07-06T20:14:46.258Z&to=2017-07-07T21:14:46.258Z"

{ "meta": { "name": "mshankar:arch:sine" , "EGU": "Lollipo" , "PREC": "10" },
"data": [ 
{ "secs": 1497486486, "val": -0.9776236311492024, "nanos": 220984002, "severity":2, "status":5 },
{ "secs": 1499375542, "val": 0.7103532724176082, "nanos": 452983690, "severity":2, "status":3, "fields": { "cnxlostepsecs": "0","startup": "true","cnxregainedepsecs": "1499375542"} },

Of course, there is nothing saved if the engine process crashed.

The same fields are there in case of an IOC reboot. For example, here I have rebooted the IOC.
{ "secs": 1499376673, "val": -0.4496474645347919, "nanos": 452668468, "severity":2, "status":5 },
{ "secs": 1499376742, "val": 0.0, "nanos": 710740321, "severity":2, "status":3, "fields": { "cnxlostepsecs": "1499376674","cnxregainedepsecs": "1499376742"} },
{ "secs": 1499376743, "val": 0.009999833334166664, "nanos": 710700442, "severity":2, "status":3 },
Since the appserver was alive during this time, it has server times for both the cnxlost and cnxregained.

Hope that helps..

Regards,
Murali






Replies:
RE: Notification of Archiver Appliance interruptions will.rogers

Navigate by Date:
Prev: Re: Device Support and Device Driver with Python Michael Davidsaver
Next: RE: Device Support and Device Driver with Python Antal, Szabolcs
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <2017
Navigate by Thread:
Prev: Re: Notification of Archiver Appliance interruptions Michael Davidsaver
Next: RE: Notification of Archiver Appliance interruptions will.rogers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <2017
ANJ, 03 Oct 2017 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·