signalk-questdb 1.2.1 → 1.4.0

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/README.md CHANGED
@@ -33,9 +33,11 @@ The plugin embeds a React config panel in the Signal K Admin UI showing:
33
33
  - **Image Version** -- dropdown with latest, pre-releases, and last 3 stable releases
34
34
  - **Connection** -- managed container toggle, host/ports, PostgreSQL port for Grafana
35
35
  - **Recording** -- record self, record AIS targets, retention days
36
+ - **Path filtering** (collapsible) -- exclude or include-only paths with glob patterns (e.g. exclude `navigation.position`)
36
37
  - **Compression** (collapsible) -- LZ4/ZSTD codec selection for on-disk storage
37
38
  - **InfluxDB Migration** (collapsible) -- auto-detect with manual URL for remote instances
38
39
  - **Data Export** (collapsible) -- date range picker, Parquet/CSV format, download button
40
+ - **Danger zone** (collapsible) -- "Remove container & all data" to fully reset QuestDB (deletes data Signal K's plugin-uninstall can't, on rootless Podman)
39
41
 
40
42
  ## QuestDB Schema
41
43
 
@@ -86,6 +88,7 @@ All mounted at `/plugins/signalk-questdb/api/`:
86
88
  | GET | `/versions` | QuestDB releases from GitHub (for version picker) |
87
89
  | GET | `/update/check` | Compare running version against latest release |
88
90
  | POST | `/update/apply` | Pull latest image, recreate container, reconnect |
91
+ | POST | `/purge-data` | Remove the QuestDB container and delete all its data (rootless-Podman-safe) |
89
92
  | GET | `/migration/detect` | Auto-detect InfluxDB (supports `?url=` for remote) |
90
93
  | GET | `/export?from=...&to=...&format=parquet` | Parquet or CSV export of the `signalk` numeric table (date range required) |
91
94
  | GET | `/full-export/tables` | List tables exposed by the per-table full-export route |
@@ -103,24 +106,26 @@ wants to slice it into kopia-dedup-friendly shards. Allowed tables:
103
106
 
104
107
  ## Configuration
105
108
 
106
- | Setting | Default | Description |
107
- | ------------------ | ------------ | ----------------------------------------------------------------- |
108
- | QuestDB version | `latest` | Docker image tag (dropdown shows stable + pre-releases) |
109
- | Managed container | `true` | Let signalk-container manage QuestDB, or connect to external |
110
- | QuestDB host | `127.0.0.1` | External QuestDB host (only used when managed=false) |
111
- | HTTP port | `9000` | External mode, or the host binding when "Bind to 0.0.0.0" is on |
112
- | ILP port | `9009` | External mode, or the host binding when "Bind to 0.0.0.0" is on |
113
- | PostgreSQL port | `8812` | Host binding for Grafana/psql when "Bind to 0.0.0.0" is on |
114
- | Sampling rate (ms) | `2000` | Default min ms between writes per path (0 = every update) |
115
- | Memory limit | `768m` | Hard cgroup cap on QuestDB container RAM (empty = unlimited) |
116
- | CPU limit (cores) | `1.5` | Max CPU cores QuestDB can use (0 = unlimited) |
117
- | Record own vessel | `true` | Record self context |
118
- | Record AIS targets | `false` | Record other vessels |
119
- | Retention (days) | `0` | Auto-delete old partitions (0 = keep forever) |
120
- | Compression codec | `lz4` | On-disk WAL compression: `none`, `lz4`, or `zstd` |
121
- | Compression level | `3` | ZSTD level 1-22 (only when codec is zstd) |
122
- | Container network | `sk-network` | Shared network for QuestDB (only applied when binding to 0.0.0.0) |
123
- | Bind to 0.0.0.0 | `false` | Expose QuestDB's ports on the LAN (see Connectivity below) |
109
+ | Setting | Default | Description |
110
+ | ------------------ | ------------ | ----------------------------------------------------------------------------------- |
111
+ | QuestDB version | `latest` | Docker image tag (dropdown shows stable + pre-releases) |
112
+ | Managed container | `true` | Let signalk-container manage QuestDB, or connect to external |
113
+ | QuestDB host | `127.0.0.1` | External QuestDB host (only used when managed=false) |
114
+ | HTTP port | `9000` | External mode, or the host binding when "Bind to 0.0.0.0" is on |
115
+ | ILP port | `9009` | External mode, or the host binding when "Bind to 0.0.0.0" is on |
116
+ | PostgreSQL port | `8812` | Host binding for Grafana/psql when "Bind to 0.0.0.0" is on |
117
+ | Sampling rate (ms) | `2000` | Default min ms between writes per path (0 = every update) |
118
+ | Memory limit | `768m` | Hard cgroup cap on QuestDB container RAM (empty = unlimited) |
119
+ | CPU limit (cores) | `1.5` | Max CPU cores QuestDB can use (0 = unlimited) |
120
+ | Record own vessel | `true` | Record self context |
121
+ | Record AIS targets | `false` | Record other vessels |
122
+ | Retention (days) | `0` | Auto-delete old partitions (0 = keep forever) |
123
+ | Path filter mode | `exclude` | `exclude` matching paths, or `include` only matching paths |
124
+ | Path filter paths | _(empty)_ | Glob patterns, one per line (e.g. `navigation.position`); empty = record everything |
125
+ | Compression codec | `lz4` | On-disk WAL compression: `none`, `lz4`, or `zstd` |
126
+ | Compression level | `3` | ZSTD level 1-22 (only when codec is zstd) |
127
+ | Container network | `sk-network` | Shared network for QuestDB (only applied when binding to 0.0.0.0) |
128
+ | Bind to 0.0.0.0 | `false` | Expose QuestDB's ports on the LAN (see Connectivity below) |
124
129
 
125
130
  ## Connectivity
126
131