Page MenuHomeDevCentral

Create a microservice to collect and store log entries
Open, HighPublic

Description

Architecture

Log collector → infra-serverslog microservice → write new log entry

  1. An agent collects the log entry, for example for Freenode nasqueron-ops channel, that will be Wearg
  2. The agent sends a message to the microservice through our broker
  3. The microservice publishes

Messaging

Note the microservice doesn't need to listen to HTTP, only AMQP. If an agent doesn't speak AMQP, we can add a log gate to the Notifications center: it's built to be an HTTP to AMQP gateway.

Storage

A sqlite db is acceptable: microservice can open the db, gets message from broker, which will deliver them one per one. Messaging solve concurrency issues with queues.

Event Timeline

I'm going to do that in Rust.

https://precompile.com/2016/06/23/shipping-forgettable-microservices-with-rust.html

My initial tests give a 20 Mb footprint on Dwellers for a Rust nickel.rs server, 300 Kb for sqlite3.

dereckson renamed this task from Create a microservice to to Create a microservice to collect and store log entries.Nov 10 2016, 05:19
dereckson moved this task from Backlog to Next on the User-Dereckson board.