-
Notifications
You must be signed in to change notification settings - Fork 8
LoggingAPIExplanation
WikiInclude(LoggingAPIDescription)
The original design for the Logging subsystem predates not only the MOBIUS project, but the existence of Java's logging package and log4j (Kin98). But, even though this framework is about a decade old, it still has several features not found in log4j or similar frameworks including first-class logging contexts, integrated statistics collection, logging categories, and more.
Within this project, it has been updated and extended for incorporation into the Mobius PVE for several reasons.
First, as it was designed and written with formal specifications (initially written in Jass, now in JML), it represents a case study in verification and thus will be used to test various other MOBIUS subsystems. All classes are annotated with lightweight JML assertions, and a high-level BON (WN95) specification is also included with the release. Moreover, the entire software system has been updated and analyzed within the Mobius PVE itself, passing all static checkers, including ESC/Java2.
Additionally, the MobLog
framework supports complex
concurrent and distributed systems' development, like that found in
the Mobius PVE. Tracing the execution of, and understanding the behavior
of, multiple concurrent threads requires a thread-aware logging
framework.
Finally, its availability under MOBIUS control provides an opportunity to unify the several disparate logging subsystems found within other MOBIUS components. Thus, it is our aim that all Mobius PVE logging, tracing, and statistics-gathering is performed via this single unified subsystem.
Version: 3 Time: Mon Apr 7 13:14:52 2008 Author: dcochran (dcochran) IP: 193.1.132.32