ramius
ramius

Reputation: 211

Python - logging requests summary stats using locust

I'm using locust

http://docs.locust.io/en/latest/index.html

to simulate a bunch of web users doing random site visits and file downloads. The logging option is set by specifying

locust ... --logfile </path/to/log/file>...

But this only logs a subset of internal events and print statements in the code, it does not log the request stats which are printed out on the console (if you use the --no-web option) or the UI (if you don't specify the --no-web option).

How can you capture the request stats in the log file?

Upvotes: 1

Views: 3509

Answers (2)

Prince Mishra
Prince Mishra

Reputation: 311

The stats you see on the console are a result of logging through the console_logger. See https://github.com/locustio/locust/blob/master/locust/log.py#L50 You can add your custom FileHandler to the console_logger and get those stats in a file.

console_logger = logging.getLogger("console_logger")
fh = logging.FileHandler(filename="stats.log")
fh.setFormatter(logging.Formatter('%(message)s'))
console_logger.addHandler(fh)

Upvotes: 1

MattC
MattC

Reputation: 21

Try setting the log level. From what I just read in the source it defaults to INFO

In your case I would type

locust ... --logfile </path/to/log/file> --loglevel DEBUG

Information from source:

help="Choose between DEBUG/INFO/WARNING/ERROR/CRITICAL. Default is INFO."

Upvotes: 1

Related Questions