signalk-questdb 2.1.7 → 2.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.release-please-manifest.json +1 -1
- package/README.md +632 -494
- package/dist/config/schema.js +1 -1
- package/dist/config/schema.js.map +1 -1
- package/dist/history-v2.d.ts +2 -63
- package/dist/history-v2.js +131 -47
- package/dist/history-v2.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js.map +1 -1
- package/doc/web-console.md +60 -41
- package/package.json +1 -1
package/dist/config/schema.js
CHANGED
|
@@ -103,7 +103,7 @@ export const ConfigSchema = Type.Object({
|
|
|
103
103
|
networkName: Type.String({
|
|
104
104
|
default: "sk-network",
|
|
105
105
|
title: "Container network",
|
|
106
|
-
description: "Shared Podman/Docker network
|
|
106
|
+
description: "Shared Podman/Docker network QuestDB joins in managed mode, so the companion signalk-grafana reaches it by container DNS. Host-port publication is separate: 'Bind to 0.0.0.0' publishes the ports on all host interfaces.",
|
|
107
107
|
}),
|
|
108
108
|
exposeToContainers: Type.Boolean({
|
|
109
109
|
default: false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/history-v2.d.ts
CHANGED
|
@@ -1,64 +1,3 @@
|
|
|
1
1
|
import { QueryClient } from "./query-client.js";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
aggregate: string;
|
|
5
|
-
parameter: string[];
|
|
6
|
-
sourceRef?: string;
|
|
7
|
-
unattributed?: boolean;
|
|
8
|
-
}
|
|
9
|
-
interface ValuesRequest {
|
|
10
|
-
from?: {
|
|
11
|
-
toString(): string;
|
|
12
|
-
add(d: unknown): unknown;
|
|
13
|
-
subtract?(d: unknown): unknown;
|
|
14
|
-
};
|
|
15
|
-
to?: {
|
|
16
|
-
toString(): string;
|
|
17
|
-
subtract?(d: unknown): unknown;
|
|
18
|
-
};
|
|
19
|
-
duration?: unknown;
|
|
20
|
-
context?: string;
|
|
21
|
-
resolution?: number;
|
|
22
|
-
sourcePolicy?: string;
|
|
23
|
-
pathSpecs: PathSpec[];
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* One column of the response.
|
|
27
|
-
*
|
|
28
|
-
* The metadata key is `$source`, not `sourceRef` — signalk-server #2817
|
|
29
|
-
* renamed it on the RESPONSE side while `PathSpec.sourceRef` (the request
|
|
30
|
-
* side) kept its name. The two are deliberately different words for the same
|
|
31
|
-
* thing, and nothing validates the response, so emitting the old key simply
|
|
32
|
-
* left every consumer unable to tell the columns apart.
|
|
33
|
-
*/
|
|
34
|
-
interface ValueColumn {
|
|
35
|
-
path: string;
|
|
36
|
-
method: string;
|
|
37
|
-
$source?: string;
|
|
38
|
-
}
|
|
39
|
-
interface ValuesResponse {
|
|
40
|
-
context: string;
|
|
41
|
-
range: {
|
|
42
|
-
from: string;
|
|
43
|
-
to: string;
|
|
44
|
-
};
|
|
45
|
-
values: ValueColumn[];
|
|
46
|
-
data: [string, ...unknown[]][];
|
|
47
|
-
}
|
|
48
|
-
type PathsRequest = {
|
|
49
|
-
from?: {
|
|
50
|
-
toString(): string;
|
|
51
|
-
add(d: unknown): unknown;
|
|
52
|
-
};
|
|
53
|
-
to?: {
|
|
54
|
-
toString(): string;
|
|
55
|
-
};
|
|
56
|
-
duration?: unknown;
|
|
57
|
-
};
|
|
58
|
-
type ContextsRequest = PathsRequest;
|
|
59
|
-
export declare function createHistoryProviderV2(queryClient: QueryClient, selfContext: string, sourcePolicyAllEnabled?: boolean, debug?: (msg: string) => void): {
|
|
60
|
-
getValues: (query: ValuesRequest) => Promise<ValuesResponse>;
|
|
61
|
-
getPaths: (query: PathsRequest) => Promise<string[]>;
|
|
62
|
-
getContexts: (query: ContextsRequest) => Promise<string[]>;
|
|
63
|
-
};
|
|
64
|
-
export {};
|
|
2
|
+
import type { history as HistoryApi } from "@signalk/server-api";
|
|
3
|
+
export declare function createHistoryProviderV2(queryClient: QueryClient, selfContext: string, sourcePolicyAllEnabled?: boolean, debug?: (msg: string) => void): HistoryApi.HistoryProvider;
|
package/dist/history-v2.js
CHANGED
|
@@ -19,21 +19,76 @@ function aggregateToSql(method) {
|
|
|
19
19
|
return "avg(value)";
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
/**
|
|
23
|
+
* The middle row of each resolution bucket, by time — of the whole range
|
|
24
|
+
* when the request names no resolution. A recorded row, not a computed
|
|
25
|
+
* value, which is what makes it meaningful for navigation.position too.
|
|
26
|
+
* There is no aggregate for it, so row_number and count over the bucket
|
|
27
|
+
* pick it in one pass; an empty bucket yields no row. Without a resolution
|
|
28
|
+
* the range is read under the LIMIT every raw read here has, so a long
|
|
29
|
+
* range is not staged whole for a single row.
|
|
30
|
+
*/
|
|
31
|
+
function middleRowSql(table, columns, where, resolution) {
|
|
32
|
+
if (resolution && resolution > 0) {
|
|
33
|
+
const bucket = `timestamp_floor('${effectiveResolution(resolution)}s', ts)`;
|
|
34
|
+
return `SELECT b AS ts, ${columns} FROM (SELECT b, ts, ${columns}, row_number() OVER (PARTITION BY b ORDER BY ts) AS rn, count(*) OVER (PARTITION BY b) AS n FROM (SELECT ${bucket} AS b, ts, ${columns} FROM ${table} WHERE ${where})) WHERE rn = n / 2 + 1 ORDER BY ts`;
|
|
35
|
+
}
|
|
36
|
+
return `SELECT ts, ${columns} FROM (SELECT ts, ${columns}, row_number() OVER (ORDER BY ts) AS rn, count(*) OVER () AS n FROM (SELECT ts, ${columns} FROM ${table} WHERE ${where} ORDER BY ts LIMIT 50000)) WHERE rn = n / 2 + 1`;
|
|
37
|
+
}
|
|
38
|
+
function isMovingAverage(method) {
|
|
39
|
+
return method === "sma" || method === "ema";
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* The window of a moving average, from `path:method:parameter`. A sample is
|
|
43
|
+
* one row of the series the window runs over: a resolution bucket when the
|
|
44
|
+
* request names a resolution, a raw row otherwise. Defaults are the ones the
|
|
45
|
+
* server's API docs suggest.
|
|
46
|
+
*/
|
|
47
|
+
function movingAverageWindow(spec) {
|
|
48
|
+
const raw = spec.parameter[0];
|
|
49
|
+
if (spec.aggregate === "sma") {
|
|
50
|
+
if (raw === undefined)
|
|
51
|
+
return { samples: 5 };
|
|
52
|
+
const samples = Number(raw);
|
|
53
|
+
if (!Number.isInteger(samples) || samples < 1) {
|
|
54
|
+
throw new Error(`sma:${raw} — the window is a whole number of samples, at least 1; ` +
|
|
55
|
+
`without a parameter it is 5`);
|
|
56
|
+
}
|
|
57
|
+
return { samples };
|
|
58
|
+
}
|
|
59
|
+
if (raw === undefined)
|
|
60
|
+
return { alpha: 0.2 };
|
|
61
|
+
const alpha = Number(raw);
|
|
62
|
+
if (!(alpha > 0 && alpha <= 1)) {
|
|
63
|
+
throw new Error(`ema:${raw} — alpha is a number above 0 and up to 1; ` +
|
|
64
|
+
`without a parameter it is 0.2`);
|
|
65
|
+
}
|
|
66
|
+
return { alpha };
|
|
24
67
|
}
|
|
68
|
+
/**
|
|
69
|
+
* Moving average over the last `n` samples of a series. An empty sample
|
|
70
|
+
* (null) still takes its place in the window — on a resolution grid it is a
|
|
71
|
+
* bucket in time — so a value drops out `n` samples after it arrived whether
|
|
72
|
+
* or not anything followed it. The result at a sample is the mean of the
|
|
73
|
+
* non-empty ones the window holds, null when it holds none.
|
|
74
|
+
*/
|
|
25
75
|
function computeSMA(values, n) {
|
|
26
76
|
const result = [];
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
77
|
+
let sum = 0;
|
|
78
|
+
let count = 0;
|
|
79
|
+
for (let i = 0; i < values.length; i++) {
|
|
80
|
+
const arrived = values[i];
|
|
81
|
+
if (arrived !== null) {
|
|
82
|
+
sum += arrived;
|
|
83
|
+
count += 1;
|
|
84
|
+
}
|
|
85
|
+
// The sample that was in the window one step ago and is not any more.
|
|
86
|
+
const gone = i >= n ? values[i - n] : null;
|
|
87
|
+
if (gone !== null) {
|
|
88
|
+
sum -= gone;
|
|
89
|
+
count -= 1;
|
|
32
90
|
}
|
|
33
|
-
|
|
34
|
-
if (window.length > n)
|
|
35
|
-
window.shift();
|
|
36
|
-
result.push(window.reduce((a, b) => a + b, 0) / window.length);
|
|
91
|
+
result.push(count > 0 ? sum / count : null);
|
|
37
92
|
}
|
|
38
93
|
return result;
|
|
39
94
|
}
|
|
@@ -199,11 +254,15 @@ debug = () => { }) {
|
|
|
199
254
|
// caller asked for a resolution; an unresolved request runs one raw query
|
|
200
255
|
// per source with no cap at all, so a path that accumulated dozens of
|
|
201
256
|
// sourceRefs (a bus with many transmitters, or churn in generated refs)
|
|
202
|
-
// would schedule dozens of queries from a single HTTP request.
|
|
257
|
+
// would schedule dozens of queries from a single HTTP request. Past the
|
|
258
|
+
// ceiling the request fails, as it does past the request-wide one:
|
|
259
|
+
// returning some of the asked-for series without saying so would be
|
|
260
|
+
// worse than refusing a request that is too broad.
|
|
203
261
|
if (all.length > MAX_EXPANDED_SOURCES) {
|
|
204
|
-
|
|
205
|
-
`
|
|
206
|
-
|
|
262
|
+
throw new Error(`sourcePolicy=all: ${path} was recorded by ${all.length} sources in ` +
|
|
263
|
+
`range, more than the ${MAX_EXPANDED_SOURCES} one path may expand ` +
|
|
264
|
+
`into — name the sources with paths=<path>|<sourceRef>, or ask ` +
|
|
265
|
+
`for a shorter range`);
|
|
207
266
|
}
|
|
208
267
|
return all;
|
|
209
268
|
}
|
|
@@ -285,6 +344,12 @@ debug = () => { }) {
|
|
|
285
344
|
// absent — the server validates the value before a provider ever sees it,
|
|
286
345
|
// so guessing at anything else here would only invent behaviour.
|
|
287
346
|
const expandBySource = sourcePolicyAllEnabled && query.sourcePolicy === "all";
|
|
347
|
+
// Checked before any query runs, so a bad window fails the request whole
|
|
348
|
+
// instead of after the columns ahead of it were already read.
|
|
349
|
+
for (const spec of query.pathSpecs) {
|
|
350
|
+
if (isMovingAverage(spec.aggregate))
|
|
351
|
+
movingAverageWindow(spec);
|
|
352
|
+
}
|
|
288
353
|
const requestedContext = query.context ?? "vessels.self";
|
|
289
354
|
const storedContext = normalizeContext(requestedContext, selfContext);
|
|
290
355
|
const safeContext = validateIdentifier(storedContext);
|
|
@@ -359,9 +424,8 @@ debug = () => { }) {
|
|
|
359
424
|
// run at four times the ceiling this cap exists to enforce — precisely
|
|
360
425
|
// the case the cap is for.
|
|
361
426
|
//
|
|
362
|
-
//
|
|
363
|
-
//
|
|
364
|
-
// LIMIT and must not trip the cap.
|
|
427
|
+
// Every column runs a query bounded by the bucket count: SAMPLE BY
|
|
428
|
+
// fabricates one row per bucket, middle_index picks at most one.
|
|
365
429
|
//
|
|
366
430
|
// A non-numeric path costs TWO such queries: the numeric one comes back
|
|
367
431
|
// empty and the string-table fallback repeats it against signalk_str.
|
|
@@ -369,11 +433,12 @@ debug = () => { }) {
|
|
|
369
433
|
// assumes the worst case — every sampled column falling back — rather
|
|
370
434
|
// than letting a request built entirely of boolean/string paths quietly
|
|
371
435
|
// run at twice the ceiling.
|
|
372
|
-
const sampledSpecs = columns.
|
|
373
|
-
|
|
374
|
-
//
|
|
436
|
+
const sampledSpecs = columns.length;
|
|
437
|
+
// navigation.position is served by its own table and never falls back;
|
|
438
|
+
// a moving average and middle_index have no text to fall back to.
|
|
375
439
|
const fallbackCapableSpecs = columns.filter((spec) => spec.path !== "navigation.position" &&
|
|
376
|
-
!
|
|
440
|
+
!isMovingAverage(spec.aggregate) &&
|
|
441
|
+
spec.aggregate !== "middle_index").length;
|
|
377
442
|
if (sampledSpecs > 0 && query.resolution && query.resolution > 0) {
|
|
378
443
|
const rangeSec = (Date.parse(range.to) - Date.parse(range.from)) / 1000;
|
|
379
444
|
const bucketsPerSeries = Math.ceil(rangeSec / effectiveResolution(query.resolution));
|
|
@@ -408,13 +473,21 @@ debug = () => { }) {
|
|
|
408
473
|
const table = isPosition ? "signalk_position" : "signalk";
|
|
409
474
|
if (isPosition) {
|
|
410
475
|
const where = buildRangeWhere(range, safeContext) + sourceWhere;
|
|
411
|
-
// Position is
|
|
412
|
-
//
|
|
413
|
-
//
|
|
414
|
-
// first
|
|
415
|
-
|
|
476
|
+
// Position is a co-recorded lat/lon pair. first, last and
|
|
477
|
+
// middle_index keep a point the vessel was at; a per-axis
|
|
478
|
+
// avg/min/max/mid would fabricate one it never occupied, so anything
|
|
479
|
+
// else runs first — and the column says so, as the string fallback
|
|
480
|
+
// does. A silent caller also gets first (the server default).
|
|
481
|
+
const posAgg = spec.aggregate === "last" || spec.aggregate === "middle_index"
|
|
482
|
+
? spec.aggregate
|
|
483
|
+
: "first";
|
|
484
|
+
if (posAgg !== spec.aggregate)
|
|
485
|
+
valuesList[specIndex].method = "first";
|
|
416
486
|
let sql;
|
|
417
|
-
if (
|
|
487
|
+
if (posAgg === "middle_index") {
|
|
488
|
+
sql = middleRowSql(table, "lat, lon", where, query.resolution);
|
|
489
|
+
}
|
|
490
|
+
else if (query.resolution && query.resolution > 0) {
|
|
418
491
|
sql = `SELECT ts, ${posAgg}(lat) as lat, ${posAgg}(lon) as lon FROM ${table} WHERE ${where} SAMPLE BY ${effectiveResolution(query.resolution)}s FILL(NULL) ORDER BY ts`;
|
|
419
492
|
}
|
|
420
493
|
else {
|
|
@@ -432,31 +505,42 @@ debug = () => { }) {
|
|
|
432
505
|
continue;
|
|
433
506
|
}
|
|
434
507
|
const where = `${buildRangeWhere(range, safeContext)} AND path = '${safePath}'${sourceWhere}`;
|
|
435
|
-
if (
|
|
436
|
-
|
|
508
|
+
if (isMovingAverage(spec.aggregate)) {
|
|
509
|
+
// The window runs over the series at the requested resolution — one
|
|
510
|
+
// averaged bucket per sample, the grid every other column is on — so
|
|
511
|
+
// sma:5 at 180s is a 15-minute average and the rows line up with the
|
|
512
|
+
// rest of the response. With no resolution the series is the raw
|
|
513
|
+
// rows, as it is for every method. A text path has nothing to
|
|
514
|
+
// average, so this column never falls back to the string table.
|
|
515
|
+
// An empty bucket stays a sample of the window (see computeSMA), so a
|
|
516
|
+
// gap ages values out instead of stretching the window across it.
|
|
517
|
+
const window = movingAverageWindow(spec);
|
|
518
|
+
const sql = query.resolution && query.resolution > 0
|
|
519
|
+
? `SELECT ts, avg(value) as agg_value FROM ${table} WHERE ${where} SAMPLE BY ${effectiveResolution(query.resolution)}s FILL(NULL) ORDER BY ts`
|
|
520
|
+
: `SELECT ts, value FROM ${table} WHERE ${where} ORDER BY ts LIMIT 10000`;
|
|
437
521
|
const result = await queryClient.exec(sql);
|
|
438
|
-
const
|
|
439
|
-
const
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
}
|
|
445
|
-
else if (spec.aggregate === "ema") {
|
|
446
|
-
const alpha = parseFloat(spec.parameter[0] ?? "0.2");
|
|
447
|
-
computed = computeEMA(rawValues, alpha);
|
|
448
|
-
}
|
|
449
|
-
else {
|
|
450
|
-
const mid = Math.floor(rawValues.length / 2);
|
|
451
|
-
computed = rawValues.map((_, i) => (i === mid ? rawValues[i] : null));
|
|
452
|
-
}
|
|
453
|
-
const rows = timestamps.map((ts, i) => [
|
|
454
|
-
ts,
|
|
522
|
+
const series = result.dataset.map((r) => r[1]);
|
|
523
|
+
const computed = "samples" in window
|
|
524
|
+
? computeSMA(series, window.samples)
|
|
525
|
+
: computeEMA(series, window.alpha);
|
|
526
|
+
const rows = result.dataset.map((r, i) => [
|
|
527
|
+
r[0],
|
|
455
528
|
computed[i],
|
|
456
529
|
]);
|
|
457
530
|
columnData.set(specIndex, rows);
|
|
458
531
|
continue;
|
|
459
532
|
}
|
|
533
|
+
if (spec.aggregate === "middle_index") {
|
|
534
|
+
// A text path has rows in signalk_str only; this reads the numeric
|
|
535
|
+
// table and leaves the column empty for one, like a moving average.
|
|
536
|
+
const result = await queryClient.exec(middleRowSql(table, "value", where, query.resolution));
|
|
537
|
+
const rows = result.dataset.map((r) => [
|
|
538
|
+
r[0],
|
|
539
|
+
r[1],
|
|
540
|
+
]);
|
|
541
|
+
columnData.set(specIndex, rows);
|
|
542
|
+
continue;
|
|
543
|
+
}
|
|
460
544
|
const aggExpr = aggregateToSql(spec.aggregate);
|
|
461
545
|
let sql;
|
|
462
546
|
if (query.resolution && query.resolution > 0) {
|
package/dist/history-v2.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"history-v2.js","sourceRoot":"","sources":["../src/history-v2.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"history-v2.js","sourceRoot":"","sources":["../src/history-v2.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { history as HistoryApi } from "@signalk/server-api";
|
|
1
2
|
import { IRouter } from "express";
|
|
2
3
|
import { Config } from "./config/schema.js";
|
|
3
4
|
interface App {
|
|
@@ -14,7 +15,7 @@ interface App {
|
|
|
14
15
|
};
|
|
15
16
|
};
|
|
16
17
|
registerHistoryProvider: (provider: unknown) => void;
|
|
17
|
-
registerHistoryApiProvider: (provider:
|
|
18
|
+
registerHistoryApiProvider: (provider: HistoryApi.HistoryProvider) => void;
|
|
18
19
|
getDataDirPath: () => string;
|
|
19
20
|
savePluginOptions: (config: unknown, cb: (err?: Error) => void) => void;
|
|
20
21
|
[key: string]: unknown;
|