---
title: Install dataclerk on Linux | Snap Store
description: Get the latest version of dataclerk for Linux - A simple server for storing
  your data
url: https://snapcraft.io/dataclerk
---

# dataclerk

[Tim McNamara (tim-clicks)](https://snapcraft.io/publisher/tim-clicks "View all snaps from Tim McNamara (tim-clicks)")

* [Tim McNamara (tim-clicks)](https://snapcraft.io/publisher/tim-clicks "View all snaps from Tim McNamara (tim-clicks)")
* [Devices and IoT](https://snapcraft.io/search?categories=devices-and-iot)
* [Utilities](https://snapcraft.io/search?categories=utilities)

latest/stable 0.1.0

Contact us about
[Snaps and IoT ›](https://snapcraft.io/about/contact-us)

Install latest/stable of dataclerk

This channel hasn't been updated in a while. It might be unmaintained and have stability or security issues.

---

**Install using the command line**

```
sudo snap install dataclerk
```

Don't have snapd? [Get set up for snaps](https://snapcraft.io/docs/installing-snapd).

---

### Package name

* dataclerk

---

### License

* Other Open Source

---

### Last updated

* 10 April 2019 - latest/stable
* 10 April 2019 - latest/edge

This snap hasn't been updated in a while. It might be unmaintained and have stability or security issues.

---

### Websites

* [github.com/timClicks/dataclerk](https://github.com/timClicks/dataclerk "https://github.com/timClicks/dataclerk")

---

### Contact

* [tim.mcnamara@canonical.com](mailto:tim.mcnamara@canonical.com "mailto:tim.mcnamara@canonical.com")

---

##### Report a Snap Store violation

* [Report this Snap](https://snapcraft.io/dataclerk#report-snap-modal)

---

* [Description](https://snapcraft.io/dataclerk#tab-description)
* [Security](https://snapcraft.io/dataclerk#tab-security)

#### A simple server for storing your data

A fast, reliable, small data remote logging tool with a very small
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.sqlite
```

Its primary user interface is `curl` (or perhaps `httpie`). Assuming
a `dataclerk` server is live at `clerk.example.com:4499`, we're able to
register channels and begin to record entries:

```
  $ curl -X PUT localhost:4499/v1/channel/mesh
  $ curl localhost:4499/+/mesh -d unit=borg-h1a42 -d status=ok
```

On 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`
* **created\_at**
  `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  actix_server::builder] Starting 12 workers
 [2019-04-09T09:04:48Z INFO  actix_server::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  actix_web::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  actix_web::middleware::logger]  "POST /+/mesh HTTP/1.1" 204 0 "-" "curl/7.61.0" 0.04191
 ^C[2019-04-09T09:07:53Z INFO  actix_server::builder] SIGINT received, exiting
 [2019-04-09T09:07:53Z INFO  dataclerk] Goodbye
```

---

## Install dataclerk on your Linux distribution

Choose your Linux distribution to get detailed installation instructions. If yours is not shown, get more details on the [installing snapd documentation](https://snapcraft.io/docs/installing-snapd).

[### Arch Linux](https://snapcraft.io/install/dataclerk/arch)

[### CentOS](https://snapcraft.io/install/dataclerk/centos)

[### Debian](https://snapcraft.io/install/dataclerk/debian)

[### elementary OS](https://snapcraft.io/install/dataclerk/elementary)

[### Fedora](https://snapcraft.io/install/dataclerk/fedora)

[### KDE Neon](https://snapcraft.io/install/dataclerk/kde-neon)

[### Kubuntu](https://snapcraft.io/install/dataclerk/kubuntu)

[### Manjaro](https://snapcraft.io/install/dataclerk/manjaro)

[### Pop!\_OS](https://snapcraft.io/install/dataclerk/pop)

[### openSUSE](https://snapcraft.io/install/dataclerk/opensuse)

[### Red Hat Enterprise Linux](https://snapcraft.io/install/dataclerk/rhel)

[### Ubuntu](https://snapcraft.io/install/dataclerk/ubuntu)

[### Raspberry Pi](https://snapcraft.io/install/dataclerk/raspbian)
