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
|