Lou Knauer
97dcc95a2f
add query api endpoint
2022-01-07 08:52:55 +01:00
Lou Knauer
4509a4a355
support subtypes in line protocol
2022-01-07 08:49:13 +01:00
Lou Knauer
50731e43a8
add config flag; fix bug in archive
2021-12-15 10:58:03 +01:00
Lou Knauer
ac7e981321
improve logging messages
2021-12-15 10:23:21 +01:00
Lou Knauer
878e9d7154
Start working on pre-computed stats
2021-12-15 09:59:33 +01:00
Lou Knauer
5d89d87a2d
Reduce gaps/rewrites in the same cell with offset
...
A new buffer remembers the timestamp of the first write.
Instead of cutting of cells relative to that time, have
a little "time buffer" so that rewriting the same cell twice
happens less often.
2021-12-02 12:57:35 +01:00
Lou Knauer
becf41f98c
Reset buffer size when reused
...
The buffers data slice size needs to be reset to 0
before it can be reused. Also, buffers that come from
the archive should not be reused as they might have
strange capacities.
2021-12-02 12:53:49 +01:00
Lou Knauer
fee0061172
Fix panic in findBuffers when Any pattern is used
2021-12-01 13:22:07 +01:00
Lou Knauer
61f9056781
Improve startup time by reading data in parallel
2021-12-01 12:30:01 +01:00
Lou Knauer
0219c48e78
Fix bug when reading past newest buffer
2021-11-30 13:09:21 +01:00
Lou Knauer
38d605b6c4
Optionally provide statistics on the timeseries enpoint
...
This is not useful for ClusterCockpit currently, but when archiving
a job or for the job-view, this can speed things up in the future.
2021-11-26 09:51:18 +01:00
Lou Knauer
579a05e4df
Fix bug in calculation of what is archived
2021-11-22 17:50:15 +01:00
Lou Knauer
458383d152
Do re-write buffers loaded from checkpoint; Add SIGUSR1 for debugging
2021-11-22 17:04:09 +01:00
Lou Knauer
d006e26fd4
Add all-nodes api endpoint for system view
2021-11-16 11:27:28 +01:00
Christoph Kluge
eff61ce93e
Use argument instead of default value for nats connection
2021-11-12 13:41:30 +01:00
Lou Knauer
1c12c655f1
api: return errors via JSON, not status codes
2021-10-19 12:17:16 +02:00
Lou Knauer
024f66f49c
Make nats optional; Update README.md
2021-10-12 13:26:54 +02:00
Lou
26528151b1
Merge pull request #7 from ClusterCockpit/new-line-protocol-format
...
New line protocol format
2021-10-11 16:29:16 +02:00
Lou Knauer
807c613cae
Add (untested) HTTP write API
2021-10-11 16:28:05 +02:00
Lou Knauer
a15238a7a9
Add multiplication by time.Second
2021-10-11 11:06:42 +02:00
Lou Knauer
fecc33a224
One less allocation
2021-10-11 10:56:38 +02:00
Lou Knauer
3aae1e80fb
host to hostname in lp; update README.md
2021-10-11 10:55:36 +02:00
Lou Knauer
2fc6ad284f
Handle new line-protrocol format in handleLine
2021-10-07 14:59:07 +02:00
Lou Knauer
85591e7a03
Switch to influxes line protocol parser
2021-10-07 14:52:45 +02:00
Lou Knauer
3b2ec98ba0
Update README.md, document API endpoints
...
Fixes #2
2021-09-20 11:25:25 +02:00
Lou Knauer
2046415f9c
Change out-of-bounds behaviour
2021-09-20 10:29:55 +02:00
Lou Knauer
27a5c0b561
Use JWT authentication for the API
...
This commit takes care of the API part of issue #6 .
2021-09-20 09:27:31 +02:00
Lou Knauer
22de7da5e4
ZIP checkpoints and move to archive
2021-09-13 13:40:39 +02:00
Lou Knauer
372d07b454
Rename archive to checkpoints; new config
2021-09-13 12:28:33 +02:00
Lou Knauer
4d17abdbc8
Support more than one line per message
2021-09-13 12:26:55 +02:00
Lou Knauer
53d5734fd5
New peek query (newest values)
2021-09-13 12:25:56 +02:00
Lou Knauer
53339eb8eb
Update README.md
2021-09-08 12:26:22 +02:00
Lou Knauer
b55a67f869
New selector type for better selection of sockets/cpus
2021-09-08 12:17:10 +02:00
Lou Knauer
a269ab423b
Lazy-init children; Use slice for metric buffers
2021-09-08 10:29:36 +02:00
Lou Knauer
e4c3bc4db1
Use Golangs contextes
2021-09-08 09:08:51 +02:00
Lou Knauer
c50ab30470
Introduce retention field in config.json
2021-09-07 09:28:41 +02:00
Lou Knauer
930974a8df
Make stats behave like read
2021-09-07 09:24:50 +02:00
Lou Knauer
dc92d17675
Add free function; Optimize read with aggregation
2021-09-07 09:21:08 +02:00
Lou Knauer
cbe5a0714c
Basic stats support
2021-09-01 08:48:35 +02:00
Lou Knauer
61bc7df93a
Use RWLock instead of classical Mutex
2021-09-01 08:47:57 +02:00
Lou Knauer
63e45960e1
Update README.md
2021-08-31 15:18:06 +02:00
Lou Knauer
4c51f5c613
Fix metric-store.go and apo.go, new config file format
2021-08-31 15:17:36 +02:00
Lou Knauer
10f0da6000
New unfinished MemoryStore implementation
2021-08-31 10:52:22 +02:00
Lou Knauer
a1c41e5f5d
Cleanup of project structure
...
I am sorry in advance for the big commits. Compilation
of the project will fail between commits and the changes
done here should probably have been separated into smaller
commits, but this project is still very fresh so I hope its fine.
Delete fileStore as it never worked anyway.
Remove lineprotocol package as it only made things more complicated
than they need to be.
2021-08-31 10:43:16 +02:00
Lou Knauer
a125bd5bfd
Add API endpoints, update README.md
2021-08-24 10:41:30 +02:00
Lou Knauer
18e0155c95
Add functions to MetricStore for future queries
2021-08-24 10:40:26 +02:00
Lou Knauer
8d827e44b4
Use type with custom MarshalJSON for metrics
2021-08-24 10:39:16 +02:00
Lou Knauer
f7310bc70a
Very basic initial API endpoint
2021-08-20 12:54:11 +02:00
Lou Knauer
fb433cc497
Use nats in main
2021-08-20 11:45:34 +02:00
Lou Knauer
13c206b11e
Implement nats receiver for metric data
2021-08-20 10:43:57 +02:00