Syslog Sharp is a syslog server written in C# .NET 4.0 that is modular, which allows a developer to easily add parsers and storage modules. A GUI console is included to view messages in real-time being captured by the server.
The interfaces and the service (listener) are storage agnostic and each module (parser) can have a different storage mechanisms. The service is multi-threaded using the Begin/End model on the socket and the Lock/Monitor model on the storage thread. A memory buffer is used to temporarily store parsed messages until they are flushed to a persistent store.
Two sample modules are included to demonstrate the use of the interfaces and give practical use to the application. The two sample modules are for logging syslog messages from the Barracuda Spam & Virus Firewall and the Barracuda Web Filter. Both modules are coded to parse the syslog message based on Barracuda's specification and then store the parsed message in a Microsoft SQL Server.
This application is currently being used in a production environment using the Barracuda modules to handle over 1 million messages a day. On a 2.6 GHz Dual Core Opteron system the CPU usage is less than 1% and memory usage is less than 12 MB.
To join this project, please contact the project administrators of this project, as shown on the project summary page.