Skip to content

Repository files navigation

ObsidianLog

CI Demo Docs

Long-term, tamper-evident operational log archival on Sia.

ObsidianLog is a cold-tier destination for operational logs. It sits beside your hot observability stack, such as Grafana, Datadog, or ELK, and archives logs encrypted, compressed, and hash-chained for later retrieval and verification. You control the encryption keys.

It is for teams and developers who need logs to remain private, retrievable, and tamper-evident after they leave their primary monitoring system.

Trying the beta? Start at the Beta Testing page. It explains what to test, what a completed test looks like, and how to give feedback.

Get started

Download the archive for your platform from the Releases page. The official obsidianlog binary includes both the local and Sia backends. No source build is required.

For complete macOS, Windows, and Linux installation instructions, including Gatekeeper and SmartScreen guidance, see the Quickstart.

On macOS or Linux, after extracting the archive in a terminal:

chmod +x obsidianlog obsidianlog-ingest
./obsidianlog init

obsidianlog is a terminal application, not a GUI application. Run it with a subcommand such as init. Double-clicking it only prints help and exits.

Five-minute local check

Choose the local backend in init. It needs no Sia account and keeps the sample data on your machine. Leave the server running in one terminal:

./obsidianlog init
./obsidianlog serve

In a second terminal in the same folder, send and verify one sample log:

curl -s -X POST http://localhost:7080/ingest \
  -H 'content-type: application/json' \
  -d '[{"timestamp":"2026-09-18T10:00:00Z","service":"api","level":"info","msg":"hello"}]'

./obsidianlog query --service api --level info --from 24h --format human
./obsidianlog verify

For step-by-step platform guidance, see the local-backend tutorial.

Sia-backed archival

Choose sia during init to archive through a Sia indexer. The default hosted option uses sia.storage, where you approve ObsidianLog through your own account. You can also supply a self-hosted or third-party indexer. The first Sia write may take several minutes, so allow 15–20 minutes for the full test. Use sample data only while evaluating it.

Follow the Sia backend tutorial for the complete flow and current hosted-service considerations.

Documentation

Try the live demo

Fork this repository and run the Demo workflow from the Actions tab. It runs the real local pipeline, init, serve, ingest, query, and verify, with no Sia account or secrets required.

Feedback, contributing, and security

License

This project is under the MIT license.

This project is supported by a Sia Foundation grant.

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Security policy

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages