FORGEBOX Enterprise 🚀 - Take your ColdFusion (CFML) Development to Modern Times! Learn More...

ColdBox Debugger

v1.7.1+29 Public

Build Status

WELCOME TO THE COLDBOX DEBUGGER MODULE

This module will enhance your application with debugger capabilities, a nice debugging panel and much more to make your ColdBox application development nicer, funer and greater! Yes, funer is a word!

LICENSE

Apache License, Version 2.0.

IMPORTANT LINKS

  • https://github.com/ColdBox/cbox-debugger
  • http://www.coldbox.org/forgebox/view/cbdebugger
  • Changelog

SYSTEM REQUIREMENTS

  • Lucee 4.5+
  • Railo 4+ (Deprecated)
  • ColdFusion 9+

INSTRUCTIONS

Just drop into your modules folder or use CommandBox to install

box install cbdebugger

This will activate the debugger in your application and render out at the end of a request.

Settings

This will also allow you to use several settings in your parent application or you can modify the settings in the ModuleConfig if desired. We recommend placing your debugger settings in your main ColdBox.cfc configuration file under a debugger struct.

// Debugger Settings
debugger = {
    // Activate debugger for everybody
    debugMode = true,
    // Setup a password for the panel
    debugPassword = "",
    enableDumpVar = true,
    persistentRequestProfiler = true,
    maxPersistentRequestProfilers = 10,
    maxRCPanelQueryRows = 50,
    showTracerPanel = true,
    expandedTracerPanel = true,
    showInfoPanel = true,
    expandedInfoPanel = true,
    showCachePanel = true,
    expandedCachePanel = false,
    showRCPanel = true,
    expandedRCPanel = false,
    showModulesPanel = true,
    expandedModulesPanel = false,
    showRCSnapshots = false,
    wireboxCreationProfiler=false
};

WireBox Mappings

The module will also register two model objects for you:

The DebuggerService can be used a-la-carte for your debugging purposes. The Timer object will allow you to time code execution and send the results to the debugger panel.

Mixins

This module will also register a few methods in all your handlers/interceptors/layouts and views:

/**
* Method to turn on the rendering of the debug panel on a reqquest
*/
any function showDebugger()

/**
* Method to turn off the rendering of the debug panel on a reqquest
*/
any function hideDebugger()

/**
* See if the debugger will be rendering or not
*/
boolean function isDebuggerRendering()

LogBox Appender

This module also comes with a LogBox appender called cbdebugger.includes.appenders.ColdboxTracerAppender so your application can log to the debugger's tracer. You won't be able to configure the appender in your main LogBox configuration since modules aren't loaded until after LogBox is already created. What you can do though is add the appender programmatically to LogBox using the afterConfigurationLoad interception point. Here's an example of what that might look like:

// This appender is part of a module, so we need to register it after the modules have been loaded.
function afterConfigurationLoad() {
    var logBox = controller.getLogBox();
    logBox.registerAppender( 'tracer', 'cbdebugger.includes.appenders.ColdboxTracerAppender' );
    var appenders = logBox.getAppendersMap( 'tracer' );
    
    // Register the appender with the root loggger, and turn the logger on.
    var root = logBox.getRootLogger();
    root.addAppender( appenders['tracer'] );
    root.setLevelMax( 4 );
    root.setLevelMin( 0 );
}

Copyright Since 2005 ColdBox Framework by Luis Majano and Ortus Solutions, Corp www.coldbox.org | www.luismajano.com | www.ortussolutions.com


HONOR GOES TO GOD ABOVE ALL

Because of His grace, this project exists. If you don't like this, then don't read it, its not for you.

"Therefore being justified by faith, we have peace with God through our Lord Jesus Christ: By whom also we have access by faith into this grace wherein we stand, and rejoice in hope of the glory of God. And not only so, but we glory in tribulations also: knowing that tribulation worketh patience; And patience, experience; and experience, hope: And hope maketh not ashamed; because the love of God is shed abroad in our hearts by the Holy Ghost which is given unto us. ." Romans 5:5

THE DAILY BREAD

"I am the way, and the truth, and the life; no one comes to the Father, but by me (JESUS)" Jn 14:1-12

CHANGELOG

1.7.1

  • Updated location protocol

1.7.0

  • Missing interception points for extending the panels: afterDebuggerPanel, beforeDebuggerPanel
  • New Module Layout
  • Dropping lucee 4.5 support

1.6.0

  • ColdBox 5 Support

1.5.0

  • Case-Sensitive filesystems fix
  • Updated travis builds
  • Unified workbench approach

1.4.0

  • ColdBox Tracer Appender added by Default by Eric Peterson

1.3.0

  • Travis integration
  • DocBox update
  • Build process update

1.2.0

  • Fix unscoped currentrow which was throwing an error when debugging was enabled.
  • Removed reference to missing images in CSS
  • Updated build scripts
  • How to turn off debugger for tests, it does this automatically now.
  • filename cases don't match #5 on certain includes

1.1.0

  • https://ortussolutions.atlassian.net/browse/CCM-14 Issue with unloading modules
  • https://ortussolutions.atlassian.net/browse/CCM-25 Lucee support
  • https://ortussolutions.atlassian.net/browse/CCM-24 Added names of rendered
  • Unloading of helpers on unload views and layouts
  • Updated production ignore lists

1.0.1

  • Bug fixes on caching panels and chicken/egg issues for ColdBox loading

1.0.0

  • Create first module version

Here are all the versions for this package. Please note that you can leverage CommandBox package versioning to install any package you like. Please refer to our managing package version guide for more information.

Version Created Last Update Published By Stable Actions
Current
1.8.0-snapshot Mar 05 2019 04:02 PM Mar 05 2019 04:02 PM
Version History
1.7.1+29 Mar 06 2019 12:08 PM Mar 06 2019 12:08 PM
1.7.1-snapshot Mar 06 2019 12:03 PM Mar 06 2019 12:03 PM
1.7.0+26 Mar 05 2019 04:02 PM Mar 05 2019 04:02 PM
1.7.0-snapshot Mar 05 2019 02:45 PM Mar 05 2019 02:45 PM
1.6.0+22 Nov 17 2017 02:37 PM Nov 17 2017 02:37 PM
1.6.0-snapshot Nov 17 2017 02:33 PM Nov 17 2017 02:33 PM
1.5.0+19 Feb 28 2017 10:19 AM Feb 28 2017 10:19 AM
1.5.0-snapshot Feb 28 2017 09:59 AM Feb 28 2017 09:59 AM
1.4.0+00008 Jul 19 2016 02:23 PM Jul 19 2016 02:23 PM
1.3.0 Sep 01 2014 05:25 PM Jun 10 2016 06:57 AM

 

No collaborators yet.
     
  • Sep 01 2014 05:25 PM
  • Mar 06 2019 12:08 PM
  • 5693
  • 2598
  • 12386