Highlighted

Performance monitoring: request.log analyzer tool

Avatar

Avatar

pixelistik

Avatar

pixelistik

pixelistik

28-10-2017

Hi AEM community,

I have made a tool and wanted to share it with you:

The Request Log Analyzer gives you some performance metrics from the request.log of an AEM instance.

https://github.com/pixelistik/request_log_analyzer

It is a command line tool that covers two different use cases:

1) One-time analysis

A customer calls and says that the website is much slower than last week?

Quickly analyze today's request.log and an older one and get some key statistics about the reponse times of your instance:

$ request_log_analyzer crx-quickstart/logs/request.log

count: 54510

time.avg: 127

time.min: 1

time.median: 6

time.90percent: 27

time.max: 15747

error.client_error_4xx_rate: 0.023

error.server_error_5xx_rate: 0.0002

$ request_log_analyzer crx-quickstart/logs/request.log.2017-10-15

count: 44302

time.avg: 131

time.min: 3

time.median: 12

time.90percent: 31

time.max: 14712

error.client_error_4xx_rate: 0.01

error.server_error_5xx_rate: 0.0001

2) Permanent monitoring

If you would like to permanently keep an eye on the response times of your instance, the Request Log Analyzer can constantly feed the statistics into your metrics store (supported are Graphite, Prometheus, and InfluxDB).

Check the README on Github for more details.

Let me know if this is useful for you and feel free to suggest improvements, either here or on Github!

How is this different from rlog.jar?

rlog.jar simply lists the slowest responses. This may be helpful for fixing some individual slow routes, but does not give you an overall performance overview with statistics like median response time or 90th percentile response time.

Why is it written in Rust?

The Rust Programming Language Rust is made for fast and safe system tools, so it seems like a good choice. Plus, I really wanted to learn it.

Replies

Highlighted

Avatar

Avatar

kautuk_sahni

Community Manager

Total Posts

5.6K

Likes

959

Correct Answer

1.1K

Avatar

kautuk_sahni

Community Manager

Total Posts

5.6K

Likes

959

Correct Answer

1.1K
kautuk_sahni
Community Manager

29-10-2017

This is really good share with the community. Thank a lot.

~kautuk

Highlighted

Avatar

Avatar

Andrew_Khoury

Employee

Avatar

Andrew_Khoury

Employee

Andrew_Khoury
Employee

06-06-2018

+1 thanks for the great work!  I will try it out

Highlighted

Avatar

Avatar

Jörg_Hoh

Employee

Total Posts

3.0K

Likes

910

Correct Answer

1.0K

Avatar

Jörg_Hoh

Employee

Total Posts

3.0K

Likes

910

Correct Answer

1.0K
Jörg_Hoh
Employee

06-06-2018

I once created this tool to visualize request logs: cq5-utils/scripts/request.log at master · joerghoh/cq5-utils · GitHub

It creates output which you can feed directly into gnuplot to create nice graphs.

Jörg