summaryrefslogtreecommitdiff
path: root/cpp/src
diff options
context:
space:
mode:
authorDwayne Boone <dwayne@zeroc.com>2009-04-20 12:15:14 -0230
committerDwayne Boone <dwayne@zeroc.com>2009-04-20 12:15:14 -0230
commita603ccc8fbb4e2233f7bdccb1110dfeeeacbea62 (patch)
tree97565ed53d4bf2b3340b4d0c0efcba403476d97c /cpp/src
parentBug 3968 - warnings not supressed with --depend (diff)
downloadice-a603ccc8fbb4e2233f7bdccb1110dfeeeacbea62.tar.bz2
ice-a603ccc8fbb4e2233f7bdccb1110dfeeeacbea62.tar.xz
ice-a603ccc8fbb4e2233f7bdccb1110dfeeeacbea62.zip
Bug 2614 - have syslogger use Ice.ProgramName
Diffstat (limited to 'cpp/src')
-rw-r--r--cpp/src/Ice/Instance.cpp2
-rw-r--r--cpp/src/Ice/SysLoggerI.cpp12
-rw-r--r--cpp/src/Ice/SysLoggerI.h3
3 files changed, 16 insertions, 1 deletions
diff --git a/cpp/src/Ice/Instance.cpp b/cpp/src/Ice/Instance.cpp
index 95867fa702a..121bc434cea 100644
--- a/cpp/src/Ice/Instance.cpp
+++ b/cpp/src/Ice/Instance.cpp
@@ -936,7 +936,7 @@ IceInternal::Instance::Instance(const CommunicatorPtr& communicator, const Initi
{
throw InitializationException(__FILE__, __LINE__, "Both syslog and file logger cannot be enabled.");
}
- _initData.logger = new SysLoggerI;
+ _initData.logger = new SysLoggerI(_initData.properties->getProperty("Ice.ProgramName"));
}
#endif
else if(!logfile.empty())
diff --git a/cpp/src/Ice/SysLoggerI.cpp b/cpp/src/Ice/SysLoggerI.cpp
index 8c9af8bad86..b3288e9f95d 100644
--- a/cpp/src/Ice/SysLoggerI.cpp
+++ b/cpp/src/Ice/SysLoggerI.cpp
@@ -14,6 +14,18 @@ using namespace std;
using namespace Ice;
using namespace IceInternal;
+Ice::SysLoggerI::SysLoggerI(const string& prefix)
+{
+ int logopt = LOG_PID | LOG_CONS;
+ int facility = LOG_USER;
+ openlog(prefix.c_str(), logopt, facility);
+}
+
+Ice::SysLoggerI::~SysLoggerI()
+{
+ closelog();
+}
+
void
Ice::SysLoggerI::print(const string& message)
{
diff --git a/cpp/src/Ice/SysLoggerI.h b/cpp/src/Ice/SysLoggerI.h
index 1b466f94ab7..86b71341c35 100644
--- a/cpp/src/Ice/SysLoggerI.h
+++ b/cpp/src/Ice/SysLoggerI.h
@@ -20,6 +20,9 @@ class SysLoggerI : public Logger, public ::IceUtil::Mutex
{
public:
+ SysLoggerI(const std::string&);
+ ~SysLoggerI();
+
virtual void print(const std::string&);
virtual void trace(const std::string&, const std::string&);
virtual void warning(const std::string&);