This is my attempt in making a python project for analysing the Timetable Generator Application. It includes detailed reporting on data and some visualisations about API Usage, performance, user informations and more.
- Traffic & Usage Analysis: See total requests, status codes, and endpoint popularity with help of a Pie chart too.
- Performance Metrics: Average and maximum response times for successful and failed requests.
- User Analysis: Unique user IDs with their Year information.
- Timetable Generation/Application Insights: Attempts, timetables found, and strategy usage.
- Miscellaneous: Malformed requests, connect attempts, reCAPTCHA errors/fails.
Make sure to place your log file at data/timetable.log.
Run the report script with desired call generation arguments:
python report.py [options]--endpointsShow endpoint popularity--performanceShow performance metrics--usersShow user stats--appShow app insights--miscShow misc info--allShow full report (default if no options given)--graphShows only pie chart (use with --endpoints or --app)
Example:
python report.py --endpoints --graph- Parsing: Each log line is parsed into a dictionary (
src/parser.py). - Analysis: Parsed logs are analyzed for calculations and evaluations (
src/analysis.py). - Reporting: Results are printed to the console (
report.py). - Visualization: Pie charts are generated for endpoint and strategy usage (
src/visuals.py).