Performance & monitoring
Keep report and app workflows responsive by reading loading metrics, narrowing queries, and monitoring operational failures.
Visible metrics
Report and app headers can display loading time for the current request. Use it as a local diagnostic signal: it reflects generation of that view with its current definition, filters, data volume, database state, and server load. It is not a permanent performance score.
Efficient reports
Report searching, filtering, sorting, and pagination are handled on the server so the browser does not need to load the complete dataset. Definition quality still determines how much work Moodle and the database must perform.
- Apply selective course, user, status, or date filters before broad exports.
- Return only the fields and rows required for the report’s purpose.
- Avoid unnecessary joins, repeated subqueries, and unbounded date ranges.
- Test empty, typical, and high-volume datasets before production rollout.
- Compare results and loading time after every material definition change.
Investigate a slow report
- Reproduce the same request
Use the same user, filters, sort, page, and report definition so the comparison is meaningful.
- Narrow the result
Apply one selective filter at a time and note whether loading time changes materially.
- Review the definition
Inspect joins, aggregation, date conditions, selected fields, and row grain.
- Compare Moodle health
Check database load, cron backlog, concurrent traffic, PHP limits, and other slow Moodle pages.
- Capture evidence
Record the report, parameters, loading time, data size, timestamp, and relevant logs before changing the query.
Operational monitoring
Use Moodle cron output and mail logs for schedules, the report Audit logs tab for report visits and client context, and plugin troubleshooting details for failed license, catalogue, AI, tracking, or delivery operations. Review repeated schedule failures and disabled schedules rather than relying only on successful test sends.
What is not measured
Lenarys Analytics exposes request loading signals and operational records; it is not a full application-performance monitoring platform. It does not replace database profiling, infrastructure monitoring, Moodle performance reports, or centralized log management. Purging Moodle caches can be appropriate after installation or upgrade, but it is not a routine fix for an inefficient report definition.
Was this page helpful?
Your feedback is stored in this browser.