0.1.048.5 MB
Other Open Source
strict
core18
A simple server for storing your data
A fast, reliable, small data remote logging tool with a very small
footprint.
it messages over the web.
If Apache Kafka is too bulky for you, consider
It's intended to be a zero-fuss solution that will easily get out
of your way when you outgrow it.
Example Session
To start, we create a server that's listening locally:
Its primary user interface is
a
register channels and begin to record entries:
On the backend, a new table has been created within Sqlite database at
Adding data to
footprint.
dataclerk is similar to a log file, but you can send it messages over the web.
If Apache Kafka is too bulky for you, consider
dataclerk.It's intended to be a zero-fuss solution that will easily get out
of your way when you outgrow it.
Example Session
To start, we create a server that's listening locally:
$ dataclerk localhost:4499 iot-logs.sqliteIts primary user interface is
curl (or perhaps httpie). Assuminga
dataclerk server is live at clerk.example.com:4499, we're able toregister channels and begin to record entries:
$ curl -X PUT localhost:4499/v1/channel/mesh
$ curl localhost:4499/+/mesh -d unit=borg-h1a42 -d status=okOn the backend, a new table has been created within Sqlite database at
iot-logs.sqlite called "mesh". The second line has created a new row within that within that table:- id
1
- createdat
2019-04-09 08:37:42
- uuid
641c8210-5aa2-11e9-8b61-674d210d2b16
- data
{"unit":"borg-h1a42","status":"ok"}Adding data to
dataclerk should be very fast. You should expect a response within 10ms, although the system may be constrained by how long things take to be stored onto physical storage media. You can see from the logs generated from this session that that we used around 3-4ms to make changes: $ dataclerk localhost:4499 iot-logs.sqlite
[2019-04-09T09:04:48Z INFO dataclerk] Hello!
[2019-04-09T09:04:48Z INFO actixserver::builder] Starting 12 workers
[2019-04-09T09:04:48Z INFO actixserver::builder] Starting server on 127.0.0.1:4499
[2019-04-09T09:05:14Z INFO dataclerk] registering channel "mesh"
[2019-04-09T09:05:14Z INFO actixweb::middleware::logger] "PUT /v1/channel/mesh HTTP/1.1" 201 0 "-" "curl/7.61.0" 0.033640
[2019-04-09T09:05:46Z DEBUG dataclerk] recv: channel:"mesh", data: {"status": "ok", "unit": "borg-h1a42"}
[2019-04-09T09:05:46Z INFO actixweb::middleware::logger] "POST /+/mesh HTTP/1.1" 204 0 "-" "curl/7.61.0" 0.04191
^C[2019-04-09T09:07:53Z INFO actixserver::builder] SIGINT received, exiting
[2019-04-09T09:07:53Z INFO dataclerk] GoodbyeUpdate History
0.1.0 (4)13 Dec 2025, 09:47 UTC
10 Apr 2019, 07:34 UTC
10 Apr 2019, 08:42 UTC
13 Dec 2025, 09:47 UTC