From af5be4fbd0c3824478b9cfc261b7a34e98a36e0f Mon Sep 17 00:00:00 2001 From: Rasmus Dahlberg Date: Sat, 25 Mar 2023 14:11:29 +0100 Subject: Clean-up skeleton --- internal/options/options.go | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) (limited to 'internal/options/options.go') diff --git a/internal/options/options.go b/internal/options/options.go index 8e10686..c988713 100644 --- a/internal/options/options.go +++ b/internal/options/options.go @@ -6,19 +6,31 @@ import ( ) type Options struct { - InputFile string - NumWorkers int + // Input file + InputFile string + MaxFileBuffer int + NextLine int64 + + // Website visits + NumWorkers int + Timeout time.Duration + MaxResponse int64 + + // Health and metrics MetricsInterval time.Duration - Timeout time.Duration - MaxResponse int64 } func Parse() (opts Options) { flag.StringVar(&opts.InputFile, "i", "lists/small.lst", "input file, one domain name per line") - flag.IntVar(&opts.NumWorkers, "w", 10, "number of parallel workers") + flag.IntVar(&opts.MaxFileBuffer, "b", 512, "max bytes to read from input file at once in MiB") + flag.Int64Var(&opts.NextLine, "n", 0, "next line to start reading the input file from") + + flag.IntVar(&opts.NumWorkers, "w", 2, "number of parallel workers") flag.DurationVar(&opts.Timeout, "t", 10*time.Second, "timeout for each website visit") + flag.Int64Var(&opts.MaxResponse, "r", 128, "max response body size to accept in MiB") + flag.DurationVar(&opts.MetricsInterval, "m", 5*time.Second, "how often to emit metrics") - flag.Int64Var(&opts.MaxResponse, "r", 128*1024*1024, "max response body size to accept") + flag.Parse() return } -- cgit v1.2.3