perfObject
A perf object summarises Spiral’s optimisation activity over the past second. It is reported on the
error / monitoring stream and is the primary signal of engine
health: the current gear, the size of the working set, and the backlog still to be processed.
{
"time": <string>,
"gear": <integer>,
"stops": <integer>,
"todo": { i, u, s },
"Pos/Soln": <real>,
"Soln/Sec": <real>,
"travelCache": { hit, fin, entries, routes, fill } | null,
}
-
timestring - The engine clock at the time of the report (HH:MM:SS; a leading "!" marks simulated time).
-
gearinteger - The current optimisation gear (effort level) Spiral is running at.
-
stopsinteger - Stops currently in the working set.
-
todo{ i, u, s } - Backlog counts still to process: i = inserts, u = updates, s = solutions.
-
Pos/Solnreal - Positions examined per solution over the period.
-
Soln/Secreal - Solutions produced per second over the period.
-
travelCache{ hit, fin, entries, routes, fill } - Travel cache statistics: hit and fin are hit ratios (fin for the calculator's fine answers), entries is the number of drives held, routes the number of calculator routes among them (0 without a calculator), fill the occupancy. See the examples below.
Reading travelCache
Section titled “Reading travelCache”Two settled reports from the same world of a thousand open drives, one run with the OSRM calculator and one without:
hit | fin | entries | routes | fill | |
|---|---|---|---|---|---|
| calculator on, after 100 requests | 0.80 | 0.006 | 6973 | 99 | 0.106 |
| calculator off | 1.00 | 1.00 | 6973 | 0 | 0.106 |
routes counts the calculator’s routes in the cache: it stays at 0 without a calculator and rises as replies arrive. entries and fill describe the cache itself and are the same either way.