Using Tx from LINQPad
LINQPad is the best way to learn the cutting edge features of C#
In the LINQPad experience of Tx is as if all the events were in a Database Except, no database is involved - the the query happens directly on raw logs/traces or real-time sessions
- Getting started with the Tx LINQPad Driver
- Queries on trace from HTTP.sys - the kernel driver used by IIS (Internet Information Services)
- Troubleshooting WCF - using ETW traces (new in .Net 4.5) to understand errors in WCF client-server application
- Average and Deviation. This query is based on .blg file (the default output of PerfMon for counters)
- Cross /provider & cross machine queries. Response time of IE on client machine and IIS on server.
- No Manifest queries. - limited way of using Tx even if you don't have the manifest.
Using Tx from C# code
- When to use Tx? vs. using just LINQ-to-Objects or Rx
- Hello Tx : Building a console app that does query on ETW trace
- Type Generation : How to generate C# types from Manifests and other schema descriptions
- Playback samples : API to replay events from one or more file(s)/session(s) in order of occurrence
- Features of Playback : Multiplexed sequences, Heterogeneity, Same API for past & real-time, etc.
- Synthetic Performance Counters : Defining "counters" as queries on events from ETW real-time session (nothing hits disk)
- Causality Navigation : Infinitely salable troubleshooting from traces on original event sources
- The visual intuition behind the Playback API
- Playback Internals of the Playback
- Extending Tx with semi-structured text logs like SharePoint's ULS format ("Unified Logging Service").
- TimeSource: creation of virtual time from timestamps on the event