Yet another logs server, that keeps logs in binary-packed format.
- To store logs packed in binary format for fast writes.
- To save disc space.
- To save on indexing large dictionaries.
Scribe at this point can be run in three different repository versions:
- Permanent MongoDB. Pass mongodb connection string in
url_db
indefault.yaml
file. - Permanent SQLite. Pass sqlite connection string (path to file) in
url_db
indefault.yaml
file. - Ephemeral SQLite stored in RAM. Leave
url_db
indefault.yaml
file empty.
Developed with rustc 1.77.2
and cargo 1.77.2
.
cargo test --profile test -- --nocapture --test-threads=1
Remember to run the server with default settings:
cargo run --release
cargo test --profile test --test integration_tests -v -- --nocapture --ignored --test-threads=1
Project uses MongoDB as a data repository.
The your_user_name
default is scribe
.
The your_password
default is scribe
.
- To run dockerized database for development:
MONGO_DB_USER=your_user_name MONGO_DB_PASSWORD=your_password docker compose -f dependencies/docker-compose.development.yaml up -d
You can vew database in the browser app at http://localhost:8081/
.
- To run dockerized database for staging or/and prod:
MONGO_DB_USER=your_user_name MONGO_DB_PASSWORD=your_password docker compose -f dependencies/docker-compose.yaml up -d
Database is then not exposed to the outside word via browser app at localhost
.
- Default on addr:
0.0.0.0:8000
cargo run --release
- With
setup.yaml
file path as the argument. The file contains the setup parameters. Look in todefault.yaml
for a reference.
cargo run --release setup.yaml