ProcessDiagnostics by Netcarver

A simple diagnostic gathering suite of modules for ProcessWire CMS/CMF.

Process Diagnostics

Introducing ProcessDiagnostics and it's helper module suite. (Is this ProcessWire's first community-created module suite?)

Example Screenshot in English Example Screenshot in German

Description


This suite adds a page under the setup menu that displays information about your installation. Each section's data is provided by a specialist diagnostic helper module but it is all collected and displayed by ProcessDiagnostics.

The ProcessDiagnostics module itself does not encode any knowledge about what makes up a good or bad setting in PW - (that's done by the helper modules) - but it does the following...

  • Gather the diagnosics (thanks to PW's hook system)
  • Display the collected diagnostics
  • Provide helper functions for describing some common things
  • Dispatch actions to diagnostic provider modules (again thanks to PW's hook system)

And eventually it will:

  • Allow control of the verbosity of the output
  • Allow the output to be emailed to a sysop
  • Store the results between visits to the page
  • Detect differences between results at set times
  • Send a notification on detection of changes

Although I am curating the collection, anyone is welcome to fork the repo, make changes in a topic branch, and submit pull requests. I've already had submissions from horst and Nico.

Diagnostic Providers


The current diagnostic providers include...

  • DiagnosePhp - Simple diagnostics about the PHP envirnoment on the server
  • DiagnoseModules - An ajax based module version checker by @Nico
  • DiagnoseImagehandler - Lets you know about GD + Imagick capabilities by @horst
  • DiagnoseDatabase - Checks each DB table and lets you know what engine and charset are in use
  • DiagnoseWebserver - Checks the webserver setup
  • DiagnoseFilesystem - Looks at how your directory and files are configured and warns of permission issues (currently incomplete)

Some of them need extending and are currently little more than skeletons. If you really want a bare bones demonstration module then take a look at DiagnoseExample

Translations


Here's a list of all the known translations

  • English (the default)
  • German (by Manfred62 - thank you!)

Help translating this suite to other languages is always welcome.

Install and use modules at your own risk. Always have a site and database backup before installing new modules.

Twitter updates

  • Weekly update – 31 March 2023 – More
    31 March 2023
  • This week ProcessWire 3.0.214 is on the dev branch. Relative to 3.0.213 this version has 16 new commits which include the addition of 3 new pull requests, 6 issue fixes, a new WireNumberTools utility class, and various other improvements. More
    17 March 2023
  • ProcessWire 3.0.213 core updates: This week we’ll look at the new WireSitemapXML module, a new WireNumberTools core class, and a new ability for Fieldtype modules to specify useful ready-to-use configurations when creating new fields. More
    24 February 2023

Latest news

  • ProcessWire Weekly #463
    In the 463rd issue of ProcessWire Weekly brings we'll check out the latest weekly update from Ryan, some weekly forum and online highlights, and more. Read on!
    Weekly.pw / 26 March 2023
  • ProcessWire 3.0.213 core updates
    This week we’ll look at the new WireSitemapXML module, a new WireNumberTools core class, and a new ability for Fieldtype modules to specify useful ready-to-use configurations when creating new fields.
    Blog / 24 February 2023
  • Subscribe to weekly ProcessWire news

“Indeed, if ProcessWire can be considered as a CMS in its own right, it also offers all the advantages of a CMF (Content Management Framework). Unlike other solutions, the programmer is not forced to follow the proposed model and can integrate his/her ways of doing things.” —Guy Verville, Spiria Digital Inc.