Event Tracing for Windows (ETW) fornisce un meccanismo molto performante per tracciare e loggare eventi sia in user mode che in kernel mode (per i driver). Nato con Windows 2000 ha dimostrato sin da subito il suo livello prestazionale: piu' di 20.000 eventi al secondo con un uso non superiore al 5% di CPU.

Sfortunatamente, per avere un'implementazione managed dovremo attendere ancora un pochetto, e cioe' Orcas. Infatti e' solamente da Orcas che compariranno le prime API per produrre o consumare eventi ETW, come descritto nell'articolo “Improve Debugging And Performance Tuning With ETW”.

In questi giorni ho giocherellato un pochetto con queste API e debbo dire che sono ancora molto primitive. Inoltre manca totalmente il supporto dei tools, dalla generazione del manifest (schema degli eventi), alla generazione delle risorse e definizioni, alla scrittura del codice managed. Molte operazioni vanno fatte a 'manina' con una commistione di codice/tecnologie unmanaged e codice managed.

Nelle prossime settimane scrivero' qualche post su come sfruttare appieno ETW...stay tuned!