summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/LoggerAdminI.h
diff options
context:
space:
mode:
authorBernard Normier <bernard@zeroc.com>2014-08-14 16:38:21 -0400
committerBernard Normier <bernard@zeroc.com>2014-08-14 16:38:21 -0400
commit18748d529095d3ab86e3dc42abfd2b5f4946f9a7 (patch)
tree1f343c0790d98e7fbcff50ad94ea5c1e272b2d4f /cpp/src/Ice/LoggerAdminI.h
parentFixed ice_invocationTimout usage in IceDiscovery hello demos (diff)
downloadice-18748d529095d3ab86e3dc42abfd2b5f4946f9a7.tar.bz2
ice-18748d529095d3ab86e3dc42abfd2b5f4946f9a7.tar.xz
ice-18748d529095d3ab86e3dc42abfd2b5f4946f9a7.zip
Initial merge for ICE-2400:
- added new Logger admin facet (C++ only) - this Logger facet allows remote application to retrieve the Ice log file, including recently logged events, with optional filters - this logger facet also allows remote applications to attach RemoteLogger objects to get new logs as they are generated - added new "show log" feature to icegridadmin, to retrieve Ice log file of Ice server (not yet implemented for IceGrid registry and node)
Diffstat (limited to 'cpp/src/Ice/LoggerAdminI.h')
-rw-r--r--cpp/src/Ice/LoggerAdminI.h53
1 files changed, 53 insertions, 0 deletions
diff --git a/cpp/src/Ice/LoggerAdminI.h b/cpp/src/Ice/LoggerAdminI.h
new file mode 100644
index 00000000000..1a175d1b8ff
--- /dev/null
+++ b/cpp/src/Ice/LoggerAdminI.h
@@ -0,0 +1,53 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2014 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+#ifndef ICE_LOGGER_ADMIN_I_H
+#define ICE_LOGGER_ADMIN_I_H
+
+#include <Ice/Config.h>
+#include <Ice/Logger.h>
+#include <Ice/PropertiesF.h>
+#include <Ice/CommunicatorF.h>
+
+namespace Ice
+{
+
+//
+// A logger that works in tandem with a "Logger" admin facet.
+//
+class ICE_API LoggerAdminLogger : public Ice::Logger
+{
+public:
+
+ //
+ // Add the associated LoggerAdmin facet to this communicator
+ //
+ virtual void addAdminFacet(const CommunicatorPtr&) = 0;
+
+
+ //
+ // Destroy this logger, in particular join any thread
+ // that this logger may have started
+ //
+ virtual void destroy() = 0;
+
+};
+typedef IceInternal::Handle<LoggerAdminLogger> LoggerAdminLoggerPtr;
+
+}
+
+namespace IceInternal
+{
+
+Ice::LoggerAdminLoggerPtr
+createLoggerAdminLogger(const std::string&, const Ice::PropertiesPtr&, const Ice::LoggerPtr&);
+
+}
+
+#endif