{"id":89,"date":"2006-02-03T16:26:23","date_gmt":"2006-02-03T23:26:23","guid":{"rendered":"http:\/\/kennyw.com\/indigo\/89"},"modified":"2006-02-03T16:26:23","modified_gmt":"2006-02-03T23:26:23","slug":"enabling-e2e-tracing-for-wcf","status":"publish","type":"post","link":"https:\/\/kennyw.com\/?p=89","title":{"rendered":"Enabling E2E Tracing for WCF"},"content":{"rendered":"<p>Tracking down bugs in distributed systems can be really difficult. One of the technologies we&#8217;re using in Indigo to help make this easier is known as &#8220;E2E Tracing&#8221; (for End to End Tracing).  Of course, this technology is only as good as the traces that a system emits. In Beta 1, we weren&#8217;t so good about our traces, but in the past few months we&#8217;ve made a concerted effort to improve them.  And we need your feedback on what is easy to track down and (just as importantly) what was a pain in the butt to figure out.  I recommend starting at &#8220;Warning&#8221; level. Verbose traces are very, well, verbose and can often be hard to navigate through.<\/p>\n<p>Indigo also includes a Trace Viewer (svcTraceViewer.exe) which allows you to make heads (or tails) of the Xml files that are generated. Again, feedback on the tool is highly encouraged.<\/p>\n<p>Here&#8217;s a sample config file snippet that will enable tracing in Indigo Applications and will generate Xml file with the traces.<\/p>\n<p>The generated file can then be opened with svcTraceViewer.exe<\/p>\n<pre><code>&lt;configuration&gt;\n &lt;system.diagnostics&gt;\n  &lt;sources&gt;\n   &lt;!-- The 'switchValue' determines the level of traces that will\n             be outputted, e.g. 'Verbose', 'Warning', 'Error', etc --&gt;\n   &lt;source name=\"System.ServiceModel\" switchValue=\"Warning, ActivityTracing\"\n                 propagateActivity=\"true\"&gt;\n     &lt;listeners&gt;\n     &lt;clear \/&gt;\n     &lt;!-- The 'initializeData' attribute determines to which file\n              the traces will be written --&gt;\n     &lt;add name=\"xml\" type=\"System.Diagnostics.XmlWriterTraceListener\"\n                initializeData=\"e2eTraceTest.xml\" \/&gt;\n     &lt;!-- To log to a Console, use this instead of previous Node:\n     &lt;add name=\"console\" type=\"System.Diagnostics.ConsoleTraceListener\" \/&gt;\n     --&gt;\n    &lt;\/listeners&gt;\n   &lt;\/source&gt;\n  &lt;\/sources&gt;\n  &lt;!-- Setting he 'autoflush' attribute to 'true' ensures that the trace\n            sources flush to disk after each trace --&gt;\n  &lt;trace autoflush=\"true\" \/&gt;\n &lt;\/system.diagnostics&gt;\n&lt;\/configuration&gt;\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Tracking down bugs in distributed systems can be really difficult. One of the technologies we&#8217;re using in Indigo to help make this easier is known as &#8220;E2E Tracing&#8221; (for End to End Tracing). Of course, this technology is only as good as the traces that a system emits. In Beta 1, we weren&#8217;t so good [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11],"tags":[],"class_list":["post-89","post","type-post","status-publish","format-standard","hentry","category-indigo"],"_links":{"self":[{"href":"https:\/\/kennyw.com\/index.php?rest_route=\/wp\/v2\/posts\/89","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kennyw.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kennyw.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kennyw.com\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/kennyw.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=89"}],"version-history":[{"count":0,"href":"https:\/\/kennyw.com\/index.php?rest_route=\/wp\/v2\/posts\/89\/revisions"}],"wp:attachment":[{"href":"https:\/\/kennyw.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=89"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kennyw.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=89"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kennyw.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=89"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}