Performa
A WordPress plugin concept for monitoring application performance, request logs visualization, database information, memory usage and slow operations.
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/udosenakane/performa/archive/refs/heads/main.zipPerforma is a WordPress performance and server monitoring plugin designed to give administrators a simple view of their site's health, performance, scheduled tasks, database activity, errors, and server/request logs.
The project is built with PHP, WordPress APIs, HTML, CSS, and vanilla JavaScript, with a focus on learning practical WordPress plugin architecture without relying on large third-party libraries.
Status: Active development
Features
Performa is being developed around several monitoring areas:
Dashboard
Provides a central overview of important WordPress and server metrics.
Planned information includes:
- PHP version
- WordPress version
- Database information
- Cron status
- Recent errors
- Performance indicators
- Server information
System Information
Displays information about the environment running WordPress.
Examples include:
- PHP version
- WordPress version
- Server software
- PHP memory limit
- Maximum execution time
- Upload limits
- Database version
- Active theme
- Active plugins
Cron Monitor
Allows administrators to inspect scheduled WordPress cron events.
Information can include:
- Cron hook
- Next scheduled execution
- Recurrence
- Arguments
- Schedule status
Database Monitor
Provides information about the WordPress database and its activity.
Planned functionality includes:
- Database size
- Table information
- Query information
- Slow queries
- Database health indicators
Error Logs
Provides an interface for viewing application and PHP errors captured by the plugin.
The log interface is designed to make errors easier to inspect and understand.
Server Log Parser
Server Log Parser is the server/request log visualization component of Performa.
It is intended to parse server or request logs and transform raw log data into useful information.
Potential metrics include:
- Total requests
- Requests by hour
- HTTP status codes
- Most requested URLs
- Request methods
- Client IP information
- User agents
- Response times
- Error requests
- Traffic patterns
The visualization layer is being built with CSS and vanilla JavaScript, rather than relying on Chart.js or another charting library.
Settings
Provides a central location for configuring Performa.
Settings will be added as the plugin develops.
Project Structure
performa/
│
├── performa.php
│
├── assets/
│ ├── admin.css
│ └── visilog.css
│
├── includes/
├── class-cron-monitor.php
├── class-dashboard.php
├── class-server-log-parser.php
├── class-system-info.php
├── class-database.php
├── class-logs.php
└── class-settings.php
performa.php
The main plugin bootstrap file.
It is responsible for:
- Plugin metadata
- Defining plugin constants
- Loading required classes
- Initializing the plugin
assets/
Contains the plugin's frontend assets.
assets/
├── admin.css
└── Server Log Parser.css
admin.css contains styles for the main WordPress administration interface.
visilog.css contains styles specifically used by the Server Log Parser visualization interface.
Architecture
Performa currently uses a class-based PHP architecture.
The project intentionally avoids introducing unnecessary architectural complexity while it is being developed.
The general approach is:
WordPress
│
▼
performa.php
├── includes/
├── class-cron-monitor.php
├── class-dashboard.php
├── class-server-log-parser.php
├── class-system-info.php
├── class-database.php
├── class-logs.php
└── class-settings.php
The architecture may evolve as new monitoring functionality is added.
Technologies
Performa currently uses:
- PHP
- WordPress Plugin API
- WordPress Admin API
- WordPress Cron API
- WordPress Database API
- HTML
- CSS
- Vanilla JavaScript
No frontend framework is required.
Installation
1. Clone the repository
git clone https://github.com/udosenakane/performa.git
2. Move the plugin into WordPress
Place the plugin directory inside:
wp-content/plugins/
The final path should look like:
wp-content/plugins/performa/
3. Activate the plugin
From the WordPress administration area:
Plugins → Installed Plugins → Performa → Activate
Development
Performa is currently being developed as a learning and portfolio project.
The main development goals are:
- Build a practical WordPress plugin.
- Learn WordPress plugin architecture.
- Work with WordPress core APIs.
- Build reusable PHP classes.
- Understand server and request logs.
- Build data visualizations without relying on charting libraries.
- Create a project suitable for demonstrating WordPress development skills.
Roadmap
Phase 1 — Plugin Foundation
- [x] Plugin structure
- [x] Admin assets
- [x] Class-based architecture
- [ ] Admin menu
- [ ] Plugin activation/deactivation
- [ ] Settings page
Phase 2 — Monitoring
- [ ] Dashboard
- [ ] System information
- [ ] Cron monitoring
- [ ] Database monitoring
- [ ] Error logging
- [ ] Performance metrics
Phase 3 — Server Log Parser
- [ ] Server log reader
- [ ] Log parser
- [ ] Request statistics
- [ ] HTTP status analysis
- [ ] URL analysis
- [ ] User-agent analysis
- [ ] Request timeline
- [ ] Traffic visualization
- [ ] Error visualization
Phase 4 — Improvements
- [ ] Better filtering
- [ ] Date/time filtering
- [ ] Log search
- [ ] Export functionality
- [ ] Performance improvements
- [ ] Security hardening
- [ ] Documentation
Security
Performa is designed to follow WordPress security practices, including:
- Capability checks
- Nonce verification
- Data sanitization
- Output escaping
- Prepared database queries
- Restricted administrative access
Security improvements will continue as the plugin develops.
Browser Support
Performa targets modern browsers that support standard HTML, CSS, and JavaScript features.
Contributing
This project is currently primarily a personal learning and portfolio project.
Suggestions, bug reports, and improvements are welcome.
If you find an issue, please open an issue with:
- A description of the problem
- Steps to reproduce it
- WordPress version
- PHP version
- Relevant error messages
License
Performa is released under the GPL-2.0-or-later license.
See the LICENSE file for details.
Project Goals
Performa is more than a collection of WordPress admin pages.
The long-term goal is to create a lightweight monitoring tool that helps WordPress administrators understand what is happening inside their sites without requiring a complex external monitoring platform.
The project also serves as a practical demonstration of:
- WordPress plugin development
- PHP OOP
- WordPress APIs
- Database interaction
- Server log parsing
- Performance monitoring
- Data visualization
- Admin UI development
- Secure WordPress development