Share via


Announcing the Windows Communication Foundation Live Service Trace Viewer

 

by Craig McMurtry and Vittorio Bertocci

 

Announcing the ...

Windows Communication Foundation

Live Service Trace Viewer  Beta I

 

·         Purpose

·         Design

·         Configuration

·         Use

 

Purpose :

 

Figure 1: The Live Service Trace Viewer

 

 

The Service Trace Viewer provided with the .NET 3.0 SDK allows the operation of Windows Communication Foundation applications to be examined after the fact. 

 

The Live Service Trace Viewer shows their interaction while it’s happening!  

 

As such, it can serve as a tool for diagnostics and also to make any Windows Communication Foundation demonstration come alive.

 

A video of the Live Service Trace Viewer in action can be found here. The Channel 9 interview with Laurence Melliol and Craig is here. 

 

Design:

Figure 2: Design of the Live Service Trace Viewer

 

The two primary components of the Live Service Trace Viewer are the Live Trace Listener and the Viewer. 

 

The Live Trace Listener:

Any Windows Communication Foundation application can be configured to use the Live Trace Listener. The Live Trace Listener interprets Windows Communication Foundation activity and message log traces. It incorporates a Sender that transmits the interpretations to a designated queue, and a Receiver that raises events as it reads interpretations from the queue. 

 

The Live Service Trace Viewer:

The Live Service Trace Viewer handles the events raised by the Receiver and displays them in a user interface that incorporates a Windows Presentation Foundation control specially designed for the purpose by IdentityMine. 

 

This modular design provides for the possibility of using various data sources, such as trace files instead of applications configured to use the Live Trace Listener directly, as well as for creating any number of alternate Viewers. 

 

 

Configuration:

 

 

Figure 3: Configuring a Windows Communication Foundation application to log messages

 

 

 

 

1. Install the July CTP or RC 1 release of .NET Framework 3.0.  

 

2. Deploy the Live Service Trace Viewer:

Download and unblock this archive, extract the components, and compile the solution. 

 

3. Configure applications to use the Live Trace Listener

a.      Reference the LiveTrace.dll assembly in the attached archive (or simply copy the assembly into the same folder as your executables). 

b.      Modify the diagnostics settings in the application’s configuration file. That can be done automatically. Simply select the Existing Configuration File item from the Live Service Trace Viewer’s Configure Node menu, shown in figure 3, and point the file dialog box that appears at the application’s configuration file. 

c.       Recompile the application. 

 

 

 

Use:

 

Figure 4: The Live Trace Viewer User Interface

 

Figure 5: Expanded Node View

 

Figure 6: Collapsed Node View

 

Figure 7: Grouping Nodes

 

 

 

As shown in figure 4, to the left, the Live Service Trace Viewer user interface incorporates a Node List, a Connections List, a Detail Panel, and the Viewer. Two resizing bars are provided for adjusting the relative size of those constituent parts. 

 

The Node List

As services start listening for messages, they appear in the Node List. Clients appear in the Node List when they first send a message. Selecting an entry in the Node List causes information about the corresponding service or client’s endpoints to be displayed in the Detail Pane. 

 

The Connection List

When messages are transmitted between two nodes, an entry appears in the Connections List. Selecting an entry in the Connections List causes the content of the messages transmitted between the two corresponding nodes to be displayed in the Detail Pane. 

 

The Viewer

Double-clicking an entry in the Node List causes the corresponding service or client to be displayed in the Viewer. 

 

Double-clicking items in the Viewer toggles between the expanded view of the item, shown in figure 5, to the left, and the collapsed view, shown in figure 6. 

 

Individual items in Viewer can be selected by left-clicking on them, and selected items can be dragged to any position. 

 

Multiple items can be selected at once by holding down the Ctrl key while selecting each item. With multiple items selected the Group Button can be used to group the selected items, as shown in figure 7. Grouping items together allows one to move them together. When a group of items are selected, their grouping can be cancelled using the Ungroup Button. 

 

The Viewer can be cleared of contents using the Clear button. 

 

 

Please report any defects or request enhancements to this beta application by e-mailing Craig McMurtry & Vittorio Bertocci. One known limitation is that this version does not support duplex contracts. 

 

 

 

 

Comments

  • Anonymous
    September 19, 2006
    Pervasive Tools, a couple more tools [Via: James Avery ] VS 2005 trick for obtaining the public key...

  • Anonymous
    September 19, 2006
    Craig McMurtry y Vittorio Bertocci acaban de publicar el beta 1 de su Live Service Trace Viewer , una

  • Anonymous
    September 19, 2006
    The link for the Live Service Trace Viewer in action is broken!

  • Anonymous
    September 19, 2006
    Check out this blog entry from Craig Mcmurtry on the Live Service Trace Viewer. This is a WPF app that

  • Anonymous
    September 19, 2006
    Yepp... the link doen't work... :-(

  • Anonymous
    September 20, 2006
    Great Tool !!!
    Congratulations, I'll post a reference in my Blog

  • Anonymous
    September 20, 2006
    Buenas, esta vez estoy alucinado. Mis amigos Gustavo y Martin se acordarán de hace unos años cuando creamos

  • Anonymous
    September 20, 2006
    Thanks for pointing out the broken link--fixed now.  

  • Anonymous
    September 20, 2006
    It seems the tool doen't work when you dont have installed MSMQ?

  • Anonymous
    September 20, 2006
    Sorry to be a pain, but i have tried the samples on two different machines, exactly as you do in the video (i watched both videos) and neither produce anything in the trace viewer.

    Beyond download and comiling your samples, do i have to do anything else? I have RC1.

    Look very cool.. just need to get it working as it could help me right now.

  • Anonymous
    September 20, 2006
    Well, i saw the private$ stuff which looked awfully like an MSMQ queue, but it isn't mentioned anywhere and i can't think why it would be needed as such.

  • Anonymous
    September 21, 2006
    Same problem here, I tried to run over some WCF applications I made but no nodes in the viewer. I had no time to do a deeper research about the cause of the problem but I will retry tonight.

  • Anonymous
    September 21, 2006
    If you are trying to do real time monitoring in WCF check out Live Trace Viewer. Craig Mcmurtry and Vittorio

  • Anonymous
    September 22, 2006
    Si quieres ver como los mensajes fluyen durante la ejecución de tu aplicación escrita con

  • Anonymous
    September 24, 2006
    I installed MSMQ, it still can't get to work..

  • Anonymous
    September 25, 2006
    Some people are still questioning my thoughts about what's so good about GUI, WCF and such. Take a look

  • Anonymous
    September 30, 2006
    Buenas, esta vez estoy alucinado. Mis amigos Gustavo y Martin se acordarán de hace unos años

  • Anonymous
    October 03, 2006
    Very interesting. I have made a new section about WCF Tools (http://www.netfxguide.com/guide/wcf_tools.aspx) in NetFXGuide.com and yours is taking full place at the moment. There is a form on the page to post new resources if you like. Best, Francesco

  • Anonymous
    October 04, 2006
    Thank you!!! Very nice, but it works only on systems with en-US culture. The problem are the hard coded consts in LiveTraceListener.cs. System.Thead.CurrentThread.CurrentCulture solve this problem. Best Jan

  • Anonymous
    October 16, 2006
    Craig McMurtry and Vitorrio Bertocci just came out with a new tool that allows you to examine web services

  • Anonymous
    October 26, 2006
    I used Craig's service tracing tool for the first time today and I have to say that it looks pretty cool...

  • Anonymous
    December 12, 2006
    this is so cool: http://blogs.msdn.com/craigmcmurtry/archive/2006/09/19/762689.aspx really handy...

  • Anonymous
    February 20, 2007
    Today we released an updated version of the DinnerNow sample on CodePlex. The new version includes several

  • Anonymous
    February 20, 2007
    Today we've released an updated version of DinnerNow , it's the v1.2. Most of the fixes and improvements

  • Anonymous
    February 20, 2007
    Today we've released an updated version of DinnerNow, it's the v1.2. Most of the fixes and improvements...

  • Anonymous
    February 20, 2007
    An updated version of Dinner Now is now available - (version 1.2) http://www.CodePlex.com/DinnerNow The

  • Anonymous
    February 21, 2007
    DinnerNow is an application I expect to be spending a fair bit of time mulling over in March as I will

  • Anonymous
    February 22, 2007
    PingBack from http://www.hanselman.com/blog/HanselminutesPodcast52EndToEndTracing.aspx

  • Anonymous
    March 18, 2007
    Two more stops made and one more to go on the first tour of Bob & Chris' MSDN Roadshow! Portland,

  • Anonymous
    January 27, 2008
    Muy buenas de nuevo, siento haber estado desaparecido una temporada, pero como mi madre dice "En

  • Anonymous
    January 27, 2008
    Muy buenas de nuevo, siento haber estado desaparecido una temporada, pero como mi madre dice "En

  • Anonymous
    January 27, 2008
    PingBack from http://elguerre.wordpress.com/2008/01/28/wcf-wcfservicehost-wcftestclient-svcconfigeditor-y-svctraceviewer/

  • Anonymous
    May 05, 2008
    לגמרי במקרה נתקלתי בכלי הזה והוא גדול.... אני ממליץ בחום להוריד ולבדוק אותו. לאתר , לסרט .

  • Anonymous
    June 03, 2008
    1.ManagedServicesEngine(MSE)http://www.codeplex.com/servicesengine 2.WCFLiveServiceTraceVi...

  • Anonymous
    July 01, 2008
    PingBack from http://adrian.sexstoriesltd.com/windowsliveviewer.html

  • Anonymous
    June 18, 2009
    PingBack from http://barstoolsite.info/story.php?id=3769