Index: /trunk/Nebulous-Server/lib/Nebulous/Server/Log.pm
===================================================================
--- /trunk/Nebulous-Server/lib/Nebulous/Server/Log.pm	(revision 4877)
+++ /trunk/Nebulous-Server/lib/Nebulous/Server/Log.pm	(revision 4878)
@@ -1,5 +1,5 @@
 # Copyright (c) 2004  Joshua Hoblitt
 #
-# $Id: Log.pm,v 1.3 2005-06-30 02:35:06 jhoblitt Exp $
+# $Id: Log.pm,v 1.4 2005-08-25 23:42:33 jhoblitt Exp $
 
 package Nebulous::Server::Log;
@@ -11,6 +11,15 @@
 
 use Log::Log4perl;
-                                                                                                                                          
-my $conf = q(
+use Nebulous::Server::Config;
+
+sub init {
+    # test for an extern config file here
+    my $config = Nebulous::Server::Config->instance;
+
+    my $dsn         = $config->dsn;
+    my $dbuser      = $config->dbuser;
+    my $dbpasswd    = $config->dbpasswd;
+
+    my $conf = <<END;
     log4perl.category.Nebulous.Server = DEBUG, SERVERLOGFILE
 
@@ -19,8 +28,28 @@
     log4perl.appender.SERVERLOGFILE.mode      = append
     log4perl.appender.SERVERLOGFILE.layout    = Log::Log4perl::Layout::PatternLayout
+ date | hostname | priority | method/sub - message\n
     log4perl.appender.SERVERLOGFILE.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss} | %H | %p | %M - %m%n
-);
-                                                                                                                          
-Log::Log4perl::init( \$conf );
+
+    log4perl.appender.SQLLOG            = Log::Log4perl::Appender::DBI
+    log4perl.appender.SQLLOG.datasource = $dsn
+    log4perl.appender.SQLLOG.username   = $dbuser
+    log4perl.appender.SQLLOG.password   = $dbpasswd
+    log4perl.appender.SQLLOG.sql        = \
+    INSERT INTO log (timestamp, hostname, level, sub, message) \
+    VALUES          (%d,        %H,       %p,    %M,  %m)
+#        VALUES          (?,         ?,        ?,     ?,   ?)
+#        log4perl.appender.SQLLOG.params.1   = %d
+#        log4perl.appender.SQLLOG.params.2   = %H
+#        log4perl.appender.SQLLOG.params.3   = %p
+#        log4perl.appender.SQLLOG.params.4   = %M
+#        log4perl.appender.SQLLOG.params.5   = %m
+#        log4perl.appender.SQLLOG.usePreparedStmt = 1
+    log4perl.appender.SQLLOG.bufferSize = 2
+    log4perl.appender.SQLLOG.layout     = Log::Log4perl::Layout::NoopLayout
+    log4perl.appender.SQLLOG.warp_message = 0
+END
+
+    Log::Log4perl::init( \$conf );
+}
 
 1;
Index: /trunk/Nebulous/lib/Nebulous/Server/Log.pm
===================================================================
--- /trunk/Nebulous/lib/Nebulous/Server/Log.pm	(revision 4877)
+++ /trunk/Nebulous/lib/Nebulous/Server/Log.pm	(revision 4878)
@@ -1,5 +1,5 @@
 # Copyright (c) 2004  Joshua Hoblitt
 #
-# $Id: Log.pm,v 1.3 2005-06-30 02:35:06 jhoblitt Exp $
+# $Id: Log.pm,v 1.4 2005-08-25 23:42:33 jhoblitt Exp $
 
 package Nebulous::Server::Log;
@@ -11,6 +11,15 @@
 
 use Log::Log4perl;
-                                                                                                                                          
-my $conf = q(
+use Nebulous::Server::Config;
+
+sub init {
+    # test for an extern config file here
+    my $config = Nebulous::Server::Config->instance;
+
+    my $dsn         = $config->dsn;
+    my $dbuser      = $config->dbuser;
+    my $dbpasswd    = $config->dbpasswd;
+
+    my $conf = <<END;
     log4perl.category.Nebulous.Server = DEBUG, SERVERLOGFILE
 
@@ -19,8 +28,28 @@
     log4perl.appender.SERVERLOGFILE.mode      = append
     log4perl.appender.SERVERLOGFILE.layout    = Log::Log4perl::Layout::PatternLayout
+ date | hostname | priority | method/sub - message\n
     log4perl.appender.SERVERLOGFILE.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss} | %H | %p | %M - %m%n
-);
-                                                                                                                          
-Log::Log4perl::init( \$conf );
+
+    log4perl.appender.SQLLOG            = Log::Log4perl::Appender::DBI
+    log4perl.appender.SQLLOG.datasource = $dsn
+    log4perl.appender.SQLLOG.username   = $dbuser
+    log4perl.appender.SQLLOG.password   = $dbpasswd
+    log4perl.appender.SQLLOG.sql        = \
+    INSERT INTO log (timestamp, hostname, level, sub, message) \
+    VALUES          (%d,        %H,       %p,    %M,  %m)
+#        VALUES          (?,         ?,        ?,     ?,   ?)
+#        log4perl.appender.SQLLOG.params.1   = %d
+#        log4perl.appender.SQLLOG.params.2   = %H
+#        log4perl.appender.SQLLOG.params.3   = %p
+#        log4perl.appender.SQLLOG.params.4   = %M
+#        log4perl.appender.SQLLOG.params.5   = %m
+#        log4perl.appender.SQLLOG.usePreparedStmt = 1
+    log4perl.appender.SQLLOG.bufferSize = 2
+    log4perl.appender.SQLLOG.layout     = Log::Log4perl::Layout::NoopLayout
+    log4perl.appender.SQLLOG.warp_message = 0
+END
+
+    Log::Log4perl::init( \$conf );
+}
 
 1;
