SysLog.cppGo to the documentation of this file.00001 /* 00002 ** SysLog.cpp 00003 ** 00004 ** Published / author: 2004-08-18 / grymse@alhem.net 00005 **/ 00006 00007 /* 00008 Copyright (C) 2004,2005,2006 Anders Hedstrom 00009 00010 This program is made available under the terms of the GNU GPL. 00011 00012 If you would like to use this program in a closed-source application, 00013 a separate license agreement is available. For information about 00014 the closed-source license agreement for this program, please 00015 visit http://www.alhem.net/sqlwrapped/license.html and/or 00016 email license@alhem.net. 00017 00018 This program is free software; you can redistribute it and/or 00019 modify it under the terms of the GNU General Public License 00020 as published by the Free Software Foundation; either version 2 00021 of the License, or (at your option) any later version. 00022 00023 This program is distributed in the hope that it will be useful, 00024 but WITHOUT ANY WARRANTY; without even the implied warranty of 00025 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00026 GNU General Public License for more details. 00027 00028 You should have received a copy of the GNU General Public License 00029 along with this program; if not, write to the Free Software 00030 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 00031 */ 00032 #ifndef WIN32 00033 00034 #include <sqlite3.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 SQLITEW_NAMESPACE 00044 namespace SQLITEW_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 SQLITEW_NAMESPACE 00076 } // namespace SQLITEW_NAMESPACE { 00077 #endif 00078 00079 #endif // WIN32 |