 <p>You definitely should try <a href="http://www.gibraltarsoftware.com/" rel="nofollow noreferrer">Gibraltar</a>. You can combine it with <a href="http://www.sharpcrafters.com/downloads/postsharp-2.0/rtw/PostSharp-2.0.8.1323.exe" rel="nofollow noreferrer">PostSharp</a> and your performantce monitoring will be a piece of cake. Just look into the following code example:</p> <pre><code> [GTrace] public Connection ConnectToServer(Server server) { ConnectionStatus connectionStatus = server.TryConnect(); return connectionStatus; } </code></pre> <p>And the result in log will look like the following:</p> <p>Starting method call (you can see passed arguments) <img src="https://i.stack.imgur.com/VZaex.png" alt="alt text"></p> <p>Ending method call</p> <p><img src="https://i.stack.imgur.com/ks5kL.png" alt="alt text"></p> <p>No crap in code, only thing you need is one attribute. Attrubutes can be used for whole project excluding not needed methods, on namespases, classes or just on any methos you need. Enjoy!</p> <p><strong>Edit</strong> Forgot to mention that Gibraltar has a very rich client and support any metrics you ever need, it's just too powerfull: <img src="https://i.stack.imgur.com/3A9oU.png" alt="alt text"></p>