Admin Dashboard and Apps

page-banner-img

Summary

This is not a past project, but it is relevant to show how other projects are supported through support, monitoring, administrative tasks, and third party tools.

The admin site is built on a LAMP stack. MySQL is used to store data such as orders, jobs, email reminders, and campaign codes. Daily Apache logs are parsed and their aggregate data is stored in JSON files and that data is displayed in filterable data tables.

There are links to installed Hesk Help Desk support administration and Matomo Analytics administration.

Vintillect Importer

The project used scheduled Python scripts (cron jobs) to automatically process new data files and daily Apache logs. It also sent out automated email reminders to encourage them to complete the process if they have an incomplete upload.

This data can be viewed in the admin pages. The WordPress Importer Jobs page contains extra features to diagnose errors and restart failed jobs. Usually the errors are caused by the user submitting a Facebook data file containing HTML instead of JSON files. Email alerts are automatically sent out as well.

Analytics

Matomo and Google Analytics are used to measure traffic, clicks, events, and conversions. Matomo is free and installed locally along with its administration site.

Matomo is free, open source, and simpler to use than Google Analytics.

Google Analytics is free and has more features, but it is also more complex. It also means giving away page event data to a data hungry third party.

Both require patience and testing to properly set up events to log, conversions to measure, and data points to report on.

Web Server Logs

Daily scheduled Python scripts parse Apache logs, aggregate them, and store them in JSON data files available for the Admin pages to consume. In the upper right corner, an alert notification presents an error count for today. This is helpful ensure that important errors get the attention they need right away. Usually those errors are the result of 404s from hacking bot scripts scanning for unprotected .env files or WordPress vulnerable scripts. Most of those hacker bot scripts quit scanning this site after adding a 404 page script with a 10 second sleep.

The error logs can of course be useful for finding errors in PHP pages that should be fixed.

The page log counts can be useful to compare with analytics to ensure traffic events are getting recorded properly.

Why not use AWS CloudWatch logs, events, and metrics? In the past, it was used in an Admin dashboard (Zholink), but it would be overkill for the current server setup.

Linked to Third Party Services and Projects

  • PayPal - The user can pay the small fees and select options such as enabling media importing.
  • Campaign Monitor - The process may seem a little daunting for some users, so there is an checkbox option in the upload form to receive emails. This signs them up to a short lived email list to receive a few emails over the course of a few days (campaign journey). These emails explain the process to guide the user in case they prefer not to watch the full tutorial video.
  • Ads on Google, Facebook, Reddit, Quora - Campaign ads (image banners and videos) were created to market this service. It generated some traffic, but it didn't convert well.
  • Matomo Analytics - To measure traffic, clicks, events, and conversions. (free, open source project)
  • Google Analytics - To measure traffic, clicks, events, and conversions. Reports for other details not provided by Matomo.
  • YouTube - Uploaded the tutorial video and videos used by Google Ads.
  • Canva - For creating banner ads, icons, and other images.