00001
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032 #ifndef WIN32
00033
00034 #include <mysql/mysql.h>
00035 #include <syslog.h>
00036
00037 #include "Database.h"
00038 #include "Query.h"
00039 #include "IError.h"
00040 #include "SysLog.h"
00041
00042
00043 #ifdef MYSQLW_NAMESPACE
00044 namespace MYSQLW_NAMESPACE {
00045 #endif
00046
00047
00048 SysLog::SysLog(const std::string& appname,int option,int facility)
00049 {
00050 static char blah[100];
00051 strcpy(blah, appname.c_str());
00052 openlog(blah, option, facility);
00053 }
00054
00055
00056 SysLog::~SysLog()
00057 {
00058 closelog();
00059 }
00060
00061
00062 void SysLog::error(Database& db,const std::string& str)
00063 {
00064 syslog(LOG_ERR, "%s", str.c_str() );
00065 }
00066
00067
00068 void SysLog::error(Database& db,Query& q,const std::string& str)
00069 {
00070 syslog(LOG_ERR, "%s: %s(%d)", str.c_str(),q.GetError().c_str(),q.GetErrno() );
00071 syslog(LOG_ERR, "QUERY: \"%s\"", q.GetLastQuery().c_str());
00072 }
00073
00074
00075 #ifdef MYSQLW_NAMESPACE
00076 }
00077 #endif
00078
00079 #endif // WIN32