Commit 8f672e35 authored by Shawn Routhier's avatar Shawn Routhier

[trac3667] Make open virtual and update logging

By default log to syslog on local0.  If the -d option is
enabled log to the console.
parent b04a332c
......@@ -63,6 +63,20 @@ void
LFCController::launch(int argc, char* argv[], const bool test_mode) {
bool do_rotate = true;
// It would be nice to set up the logger as the first step
// in the process, but we don't know where to send logging
// info until after we have parsed our arguments. As we
// don't currently log anything when trying to parse the
// arguments we do the parse before the logging setup. If
// we do decide to log something then the code will need
// to move around a bit.
try {
parseArgs(argc, argv);
} catch (const InvalidUsage& ex) {
usage(ex.what());
throw; // rethrow it
}
// If we are running in test mode use the environment variables
// else use our defaults
if (test_mode) {
......@@ -79,8 +93,14 @@ LFCController::launch(int argc, char* argv[], const bool test_mode) {
keaLoggerSeverity(INFO),
keaLoggerDbglevel(0));
// We simply want the default syslog option
option.destination = OutputOption::DEST_SYSLOG;
// If we are running in verbose (debugging) mode
// we send the output to the console, otherwise
// by default we send it to the SYSLOG
if (verbose_) {
option.destination = OutputOption::DEST_CONSOLE;
} else {
option.destination = OutputOption::DEST_SYSLOG;
}
// ... and set the destination
spec.addOutputOption(option);
......@@ -88,19 +108,6 @@ LFCController::launch(int argc, char* argv[], const bool test_mode) {
manager.process(spec);
}
try {
parseArgs(argc, argv);
} catch (const InvalidUsage& ex) {
usage(ex.what());
throw; // rethrow it
}
// Now that we have parsed the arguments we can
// update the logging level.
if (verbose_) {
setDefaultLoggingOutput(verbose_);
}
LOG_INFO(lfc_logger, LFC_START);
// verify we are the only instance
......
......@@ -56,7 +56,7 @@ public:
/// statistics associated with any previous use of the file
/// While it doesn't throw any exceptions of its own
/// the base class may do so.
void open();
virtual void open();
/// @brief Appends the lease record to the CSV file.
///
......
......@@ -38,7 +38,7 @@ namespace dhcp {
/// validation (see http://kea.isc.org/ticket/2405). However, when #2405
/// is implemented, the @c next function may need to be updated to use the
/// validation capablity of @c Lease6.
class CSVLeaseFile6 : public isc::util::CSVFile, public LeaseFileStats {
class CSVLeaseFile6 : public isc::util::CSVFile, public LeaseFileStats {
public:
/// @brief Constructor.
......@@ -55,7 +55,7 @@ public:
/// statistics associated with any previous use of the file
/// While it doesn't throw any exceptions of its own
/// the base class may do so.
void open();
virtual void open();
/// @brief Appends the lease record to the CSV file.
///
......
......@@ -390,7 +390,7 @@ public:
/// be called.
///
/// @throw CSVFileError when IO operation fails.
void open();
virtual void open();
/// @brief Creates a new CSV file.
///
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment