LINQPad driver for Tx

First, install LINQPad.
This is the best education tool about LINQ, Regular Expressions, ... and all cutting edge features in C#

Click on Add Connection and then "View More Drivers":

TxDriverInstall.JPG

Click on the Download link, and then select the driver from the list:

TxDriver.JPG

On the next page you have a choice between past or real-time sessions.
As of now the LINQPad driver supports only ETW, so past means .etl files and real time is ETW sessions.

As general rule, it is best to first try your queries on past history.
This way you can try the query many times on the same data to make sure you get the desired results.
  • Click Add... for "Files" and browse for Documents\LINQPad Queries\Tx\HTTP_Server.etl
  • Click Add... for "Metadata" and add HTTP_Server.man
This .etl file and manifest are from IIS (Internet Information Services) and come as samples with Tx.

Choose connection name and click OK

On the left tree you now see the schema of the events
  • In the query window, type "from p in "
  • Drag the Parse node from the left tree.
  • Complete the query with "select p.Url" and press the green button

SelectParseUrl.JPG

It is good idea to also install the Tx samples, and try them:

Click on the Samples tab, "Download more samples":
TxSamplesInstall.JPG

See also:



Last edited May 23, 2013 at 10:33 PM by georgis, version 14

Comments

gbrayut Jan 6, 2014 at 8:06 PM 
More details using Tx to parse W3C Log files in LINQPad and PowerShell:

http://codeblog.theg2.net/2014/01/txwindows-parsing-wc3-iis-log-files-in.html

gbrayut Jan 6, 2014 at 6:51 PM 
FYI If you want to use Tx to parse W3C Log files you have to use the Tx.Windows.W3CEnumerable.FromFile or FromFiles methods. To do this in LINQPad use F4 to add a reference to the Tx.Windows and Tx.Core nuget packages. You may also want to add the following additional namespaces on the F4 page:

System.Linq
System.Reactive
System.Reactive.Linq
Tx.Windows



See https://tx.codeplex.com/SourceControl/latest#Test/UnitTests/W3CTest.cs for an example of using Tx with IIS Log files.