Expand my Community achievements bar.

Dive into Adobe Summit 2024! Explore curated list of AEM sessions & labs, register, connect with experts, ask questions, engage, and share insights. Don't miss the excitement.

Performance monitoring: request.log analyzer tool

Avatar

Level 2

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.

3 Replies

Avatar

Administrator

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

~kautuk



Kautuk Sahni

Avatar

Employee

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

Avatar

Employee Advisor

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