Built-in Loggers
Ice provides a file-based logger as well as Unix- and Windows-specific logger implementations.
File Logger
The file-based logger is enabled via the Ice.LogFile property. This logger is available for all supported languages and platforms.
Syslog Logger
You can activate a logger that logs via the Unix syslog implementation by setting the Ice.UseSyslog property.
Systemd Journal Logger
On Linux, you can activate a logger that logs to the systemd journal by setting the Ice.UseSystemdJournal property.
Windows Logger
On Windows, subclasses of Ice::Service use the Windows application event log by default. The event log implementation is available for C++ applications.
macOS OSLog
On maOS, you can activate a logger that logs using OSLog by setting Ice.UseOSLog property.
.NET Logger
The default logger in Ice for C# writes its messages with the System.Diagnostics.Trace class. By default, Ice adds its own console listener, which writes to stderr. You can disable the logging of messages via this trace listener by setting the property Ice.ConsoleListener to zero.
You can add your own trace listener programmatically. For example:
// Create a trace listener for the event log.EventLogTraceListener myTraceListener = new EventLogTraceListener("myEventLogSource");
// Add the event log trace listener to the collection.Trace.Listeners.Add(myTraceListener);Syslog Logger
You can activate a logger that logs via the Unix syslog implementation by setting the Ice.UseSyslog property.