2 releases

new 0.1.1 Apr 23, 2025
0.1.0 Mar 24, 2025

#210 in Network programming

Download history 106/week @ 2025-03-24 9/week @ 2025-03-31 24/week @ 2025-04-07 16/week @ 2025-04-14 137/week @ 2025-04-21

190 downloads per month

MIT license

115KB
2.5K SLoC

Project Logo

Saimiris

[!WARNING] Currently in early-stage development.

Architecture

The probing system is composed of two main components: the client and the agent. Those components send and receive messages from Kafka topics, respectively. The measurements results can be handled in any way, such as storing them in a ClickHouse database.

Check the integration tests for a local quick setup of the system.

Agent

The agent performs the measurements. It is always listening for results. It consumes probes to send from Kafka topic, performs the measurements, and then produces the results to another Kafka topic.

samiris agent --config=saimiris.yml

Client

The client is the agent that sends the measurements to the agent. It sends messages to a Kafka topic, which represents a set of probes to be sent consecutively. A measurement can be composed of multiple messages.

cat probes.txt | samiris client --config=saimiris.yml <comma-separated-agent-ids>

The probes to send are in the caracal format.

Dependencies

~25–40MB
~526K SLoC