VarLog is a simple mock HTTP service written in Rust that logs all incoming HTTP requests.
  • Rust 69.6%
  • Shell 25.7%
  • Dockerfile 4.7%
Find a file
2025-12-03 08:37:36 +01:00
src feat: add api endpoint 2025-04-02 12:47:28 +02:00
.gitignore feat(task): add tmp fodler to gitignore 2025-12-03 08:37:36 +01:00
Cargo.lock feat: init 2025-04-01 15:29:18 +02:00
Cargo.toml feat: init 2025-04-01 15:29:18 +02:00
Dockerfile feat: add api endpoint 2025-04-02 12:47:28 +02:00
LICENSE feat: add license 2025-04-08 18:35:19 +02:00
README.md feat: add api endpoint 2025-04-02 12:47:28 +02:00
task feat: add api endpoint 2025-04-02 12:47:28 +02:00

VarLog

Docker pulls

VarLog is a simple mock HTTP service written in Rust that logs all incoming HTTP requests.

  • 🌐 Accepts all HTTP methods (GET, POST, PUT, DELETE, etc.)
  • Returns HTTP 200 OK for every request
  • 📝 Logs request details (method, path, headers, body, timestamp)
  • 🖥️ Provides a web UI to view and download request logs
  • 🔄 Outputs request information to the console in real-time
  • 💾 Stores all requests in a text file for persistence

Requirements

Usage

Clone the repo.

git clone git@github.com:Mint-System/VarLog.git
cd VarLog

Run the rust app.

task run

This will start the service at http://127.0.0.1:8080.

Interact with VarLog

You can send any HTTP request to any path on the server:

curl http://127.0.0.1:8080/any/path

curl -X POST http://127.0.0.1:8080/api/data -d '{"key": "value"}'

curl -X PUT http://127.0.0.1:8080/resource/123 -d '{"status": "updated"}'

curl -X DELETE http://127.0.0.1:8080/resource/123

To view the received requests visit http://127.0.0.1:8080/ui in your browser.

You can also get the received requests from the api endpoint.

curl http://127.0.0.1:8080/api

Develop

Container image

Build the image.

task build

Run the container.

task start

Publish the container.

task publish