GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - phpmyadmin/error-reporting-server: phpMyAdmin server side component for the error reporting system

BranchesTags
Open more actions menu

Latest commit

 

History

987 Commits
987 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/workflows
.github/workflows
 
 
bin
bin
 
 
config
config
 
 
docs
docs
 
 
src
src
 
 
templates
templates
 
 
tests
tests
 
 
webroot
webroot
 
 
.editorconfig
.editorconfig
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
.htaccess
.htaccess
 
 
.scrutinizer.yml
.scrutinizer.yml
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
composer.json
composer.json
 
 
index.php
index.php
 
 
phpcs.xml.dist
phpcs.xml.dist
 
 
phpstan-baseline.neon
phpstan-baseline.neon
 
 
phpstan.neon.dist
phpstan.neon.dist
 
 
phpunit.xml.dist
phpunit.xml.dist
 
 

Repository files navigation

phpMyAdmin's Error Reporting Server

Test-suite codecov Scrutinizer Code Quality

phpMyAdmin server side component for the error reporting system. It uses CakePHP, the migrations plugin and, for the development environment, the debug kit plugin. The GitHub login is implemented in src/Controller/DevelopersController.php, there is no OAuth plugin.

Access model

Signing in is done with GitHub, see OAuth configuration setup. The account does not have to belong to the phpMyAdmin organization:

  • Any GitHub account that signs in can view every report and incident, including the raw full_report of an incident.
  • Only the developers with write access to the repository configured in the GithubRepoPath key of config/oauth.php can act on the reports: forward them to GitHub, change their status, look at the statistics, and use the other actions of the reports, incidents and notifications pages.

A developer without that write access is read-only, the action is refused with a "You need to have commit access on phpmyadmin/phpmyadmin repository on Github.com to do this action" message. Without signing in, only the report submission endpoint, the pages and the GitHub webhook are reachable.

The write access is read from GitHub at the login and asked again every half day, so a permission granted or removed on the repository is followed without signing out. When GitHub cannot be asked, the answer of the session is kept — but for a day and a half at most, after which the developer is read-only until GitHub answers again.

Report submission

Reports are posted to /incidents/create as a JSON body, without authentication, and each stored report sends a notification email. The server therefore bounds a single submission:

  • a body larger than 1 MiB (1 048 576 bytes) is refused with the HTTP status 413 and the {"success": false} JSON answer, before the body is decoded;
  • the string fields of the stored incident and report are cut to the length of their database column, the browser is kept to 40 characters and the error message to 200 in the incident and 150 in the report;
  • a report carrying more than 40 errors or more than 40 stack frames keeps the first 40 only;
  • a report whose full_report or stacktrace is larger than a TEXT column (65 535 characters) is refused and logged;
  • a PHP report without a list of errors, or a report of an unmaintained phpMyAdmin version, is ignored.

Deployment

How to install the server, configure it, migrate its database and run its cron jobs is in docs/DEPLOYMENT.md. The example web server configurations are in the same docs directory.

How to run the test suite

You can run the test suite with:

composer run test --timeout=0

The coding standard and the static analysis can be run with:

composer run phpcs
composer run phpstan

About

phpMyAdmin server side component for the error reporting system

reports.phpmyadmin.net

Resources

Readme
License

Security policy

Security policy
Activity
Custom properties

Stars

23 stars

Watchers

11 watching

Forks

29 forks
Report repository

Releases

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.