Project

General

Profile

Task #2541

Updated by Junxiao Shi over 9 years ago

In a real world NFD deployment, it is difficult to difficulty determine cause of a fatal error caused by an the exception. 
 That It either needs code modification, or running gdb with `catch throw`. 

 Boost has partial solution to the problem: Boost **Boost Exception library. library**. 
 The exception is annotated with additional information, including: source name, function name, and line number of the place of the exception throwing. 

 This issue includes: 

 * replace all `throw` exceptions with [`BOOST_THROW_EXCEPTION` macros](http://www.boost.org/doc/libs/1_48_0/libs/exception/doc/BOOST_THROW_EXCEPTION.html) 
 * in NFD `main.cpp`'s top-level `catch`, print the annotated additional information into the fatal log

Back