Zurück zum Ranking

jokkedk/webgrind

PHP

Xdebug Profiling Web Frontend in PHP

debugging-toolphpxdebug
Sterne-Wachstum
Sterne
3.3k
Forks
410
Wochenwachstum
Issues
39
1k2k3k
Jan. 2023März 2024Mai 2025Juli 2026
ArtefaktePackagistcomposer require jokkedk/webgrind
README

Webgrind

Webgrind is an Xdebug profiling web frontend in PHP. It implements a subset of the features of kcachegrind and installs in seconds and works on all platforms. For quick'n'dirty optimizations it does the job. Here's a screenshot showing the output from profiling:

Features

  • Super simple, cross platform installation - obviously :)
  • Track time spent in functions by self cost or inclusive cost. Inclusive cost is time inside function + calls to other functions.
  • See if time is spent in internal or user functions.
  • See where any function was called from and which functions it calls.
  • Generate a call graph using gprof2dot.py

Suggestions for improvements and new features are more than welcome - this is just a start.

Installation

  1. Download webgrind
  2. Unzip package to favourite path accessible by webserver.
  3. Load webgrind in browser and start profiling by clicking the "update" button in the top right corner

Alternatively, on PHP 5.4+ run the application using the PHP built-in server with the command composer serve or php -S 0.0.0.0:8080 index.php if you are not using Composer.

For faster preprocessing, give write access to the bin subdirectory, or compile manually:

  • Linux / Mac OS X: execute make in the unzipped folder (requires GCC or Clang.)
  • Windows: execute nmake -f NMakeFile in the unzipped folder (requires Visual Studio 2015 or higher.)

See the Installation Wiki page for more.

Use with Docker

Instead of uploading webgrind to a web server or starting a local one, you can use the official Docker image to quickly inspect existing xDebug profiling files. To use the Docker image, run the following command with /path/to/xdebug/files replaced by the actual path of your profiling files.

docker run --rm -v /path/to/xdebug/files:/tmp -p 80:80 jokkedk/webgrind:latest

Now open http://localhost in your browser. After using webgrind you can stop the Docker container by pressing CTRL / Strg + C.

To use the built-in file viewer, mount the appropriate files under /host in the container.

Credits

Webgrind is written by Joakim Nygård and Jacob Oettinger. It would not have been possible without the great tool that Xdebug is thanks to Derick Rethans.

Current maintainer is Micah Ng.

Ähnliche Repositories
gruns/icecream

🍦 Never use print() to debug again.

PythonPyPIMIT Licensepythonpython3
10.1k224
ProxymanApp/Proxyman

The best-in-class HTTP Debugger for macOS. Capture HTTP/HTTPS from macOS, iOS, Android with a few clicks ✅

proxyproxy-server
proxyman.com
6.9k237
reqable/reqable-app

Reqable issue track repo

android-appdebugging-tool
reqable.com
6.5k254
GoogleChromeLabs/ProjectVisBug

FireBug for designers › Edit any webpage, in any state https://a.nerdy.dev/gimme-visbug

JavaScriptnpmApache License 2.0design-toolsextension
visbug.web.app
5.8k330
CocoaDebug/CocoaDebug

iOS Debugging Tool 🚀

Swiftloggernetwork
4.1k401
DaveWoodCom/XCGLogger

A debug log framework for use in Swift projects. Allows you to log details to the console (and optionally a file), just like you would have with NSLog() or print(), but with additional information, such as the date, function name, filename and line number.

SwiftMIT Licenselogginglogging-library
4k476
HyperDbg/HyperDbg

State-of-the-art native debugging tools

CGNU General Public License v3.0hypervisorhyperdbg
hyperdbg.org
3.9k492
microsoft/tensorwatch

Debugging, monitoring and visualization for Python Machine Learning and Data Science

Jupyter NotebookMIT Licenseaideep-learning
3.5k361
epasveer/seer

Seer - a gui frontend to gdb

C++GNU General Public License v3.0gdb-frontendgdb-mi
3.4k116
microsoft/ProcDump-for-Linux

A Linux version of the ProcDump Sysinternals tool

CMIT Licensedebugging-toolcli
3.1k326
rohanrhu/gdb-frontend

☕ GDBFrontend is an easy, flexible and extensible gui debugger.

JavaScriptnpmGNU General Public License v3.0gdbdebug
3k113
korcankaraokcu/PINCE

Reverse engineering tool for Linux

PythonPyPIOthergdbcheat-engine
korcankaraokcu.github.io/PINCE/
3k188