Skip to content

mami-project/monroe-puic-poll

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

monroe-puic-poll

Docker container for Monroe experiments.

Configuration options (these need to be entered as key value pairs in the monroe interface when scheduling):

  • URLs string: list of urls delimited by semi-colon.
  • WaitFrom int: minimum delay to wait after a request was completed to make the next request.
  • WaitTo int: maximum delay to wait after a request was completed to make the next request.
  • Collect int: how many requests to make per run and group together in a single log file.
  • IFaceName string: Name of the interface. This will bind the local address to the IP assigned to the interface on startup. Use * to specificy listening on all.
  • Runs int: how many runs to do. One run equals one log file.

The pull URL is docker.io/munt/monroe-puic-poll. Example config is:

"Collect":1024,"Runs":4,"URLs":"https://12.131.112.18:1010/data/4KiB","WaitFrom":10,"WaitTo":20,"IFaceName":"*"

Caveats

Results are periodically synced from /monroe/results within the docker container to the monroe servers. To avoid "over-syncing" it's recommended in the manual to write log files to a temporary directory and then move them to /monroe/results. This however has the caveat that if the container is killed the log files obviously can't have been moved to /monroe/results. monroe-puic-pull moves each run's log file after the run is completed to the /monroe/results directory (and then repeat with the next run). This means that if the container is killed in the middle of the run, the current run's log file is lost (but log files from past runs will be synced). This means that you need to select an appropriate amount of time and an appropriate data quota such that your runs will complete with these settings (or that at least a few runs can complete before the container is killed).

Local tests

To test the created docker container locally, you need to create a directory (e.g. temp) which contains a results directory and the expected parameters in a JSON file called config. For example:

{
    "Collect":1024,
    "Runs":4,
    "URLs":"https://12.131.112.18:1010/data/4KiB",
    "WaitFrom":10,
    "WaitTo":20,
    "IFaceName":"*"
}

Now you can run docker using this command: docker run -v <full path to temp directory>:/monroe monroe-puic-poll.

About

puic-poll docker monroe

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published