Blog

LogBox Release Candidate 1 is out!

Luis Majano August 05, 2009

Spread the word

Luis Majano

August 05, 2009

Spread the word


Share your thoughts

New update to LogBox is out today in preparation for a final 1.0 release. You can download it from the main download page. This update includes the following:

Ability to get a logger using a class object instead of a category name:

<cfset logger = logBox.getLogger(this)>

LogBox will then inspect the object and get its fully qualified name from it.  This is great instead of passing the category name because when you refactor, the logging auto-adjusts itself.

Tracer log level removed.

Creation of a DummyAppender that will log null messages. Useful for testing

ColdBox integration updated for 3.0 apps:
  • All 3.0 apps now have logBox integration
  • New appender for ColdBox Apps: ColdboxTracerAppender which will interface with the ColdBox debugger so you have access to all the logging right in your debugger panel as tracers.
  • ColdBox is now synchronized with logBox instances for creating custom coldbox related appenders and logging.
  • New logbox DSL for autowiring.  You can now autowire logbox, the root logger, and any logger in any coldbox enabled application via setter, constructor or cfproperty injection.

<!--- LogBox Instance --->
<cfproperty name="logBox" type="logbox">
<!--- Root Logger --->
<cfproperty name="logger" type="logbox:root">
<!--- Single Category name --->
<cfproperty name="logger" type="logbox:logger:MyCategory">
<!--- Dynamic Name --->
<cfproperty name="logger" type="logbox:logger:#getMetadata(this).name#">



Add Your Comment

(3)

Aug 05, 2009 11:07:27 UTC

by Robert Rawlins

I'll be honest, this is the first time I've really looked at anything to do with LogBox but looks really excellent, I know in the past I've gotten used to the excellent logging library's that come with Python and JAVA, cflog was always pretty insufficient.

Louis, this might seem like a rude question so tell me if it is, but does LogBox work outside of the ColdBox framework? I have a non-frameworked application which currently has my own little home-brew logging model which I'd love to upgrade.

Rob

Aug 05, 2009 11:47:01 UTC

by LUis Majano

Hi Rob,

Yes! The whole idea behind the new 3.0 ColdBox Platform is modularity and identity. We have identified several core services that can be used standalone. So you can use LogBox with any non-framework application, or with any other framework out there.

Aug 05, 2009 11:51:44 UTC

by Robert Rawlins

Luis that sounds excellent! I'll be sure to download me a copy and have a play around! thank you.

Rob

Recent Entries

One Language, Every Runtime: BoxLang Expands Beyond the Server

One Language, Every Runtime: BoxLang Expands Beyond the Server

Discover how BoxLang’s multi-runtime architecture helps developers build beyond the server with support for serverless functions, desktop applications, CI/CD workflows, Java integrations, containers, runtime management, and more.

Maria Jose Herrera
Maria Jose Herrera
June 04, 2026
MatchBox and WebAssembly: Running BoxLang in the Browser and at the Edge

MatchBox and WebAssembly: Running BoxLang in the Browser and at the Edge

The MatchBox open beta is live at https://boxlang.ortusbooks.com/boxlang-framework/matchbox, and it brings something genuinely new to the BoxLang ecosystem: a path into WebAssembly.

That means BoxLang code can now move into browser applications, static-site deployments, edge runtimes, and WASI-style containers - without requiring a JVM. The feature is still beta, but the core direction is already useful: write BoxLang, compile it with MatchBox, and ship the generated WASM artifact to wherever a small portable runtime makes sense.

Jacob Beers
Jacob Beers
June 04, 2026
BoxLang 1.14.0 : BoxSet is Here: BoxLang's New First-Class Set Type

BoxLang 1.14.0 : BoxSet is Here: BoxLang's New First-Class Set Type

BoxLang 1.14.0 ships something that JVM developers have wanted for a long time: a true first-class Set type baked directly into the language. Not a wrapper you reach for manually, not a createObject( "java", "java.util.HashSet" ) incantation you paste from a Stack Overflow answer years ago. A real BoxSet with literal syntax, operator overloads, a full functional pipeline, change listeners, JSON serialization, and deep Java interop.

Luis Majano
Luis Majano
June 03, 2026