Registro de respuestas HTTP sin procesar y comprimidas en ASP.NET e IIS7

En la línea deesta pregunta Quiero crear un HttpModule que hará un registro personalizado de solicitudes y respuestas para nosotros. Usando el código en la respuesta más popular para esa pregunta, tengo un HttpModule en funcionamiento que, de hecho, funciona:

class PortalTrafficModule : IHttpModule
{
    public void Dispose()
    {
        // Do Nothing
    }

    public void Init(HttpApplication context)
    {
        context.BeginRequest += new EventHandler(context_BeginRequest);
        context.EndRequest += new EventHandler(context_EndRequest);
    }

    private void context_BeginRequest(object sender, EventArgs e)
    {
        HttpContext context = ((HttpApplication)sender).Context;

        // Create and attach the OutputFilterStream to the Response and store it for later retrieval.
        OutputFilterStream filter = new OutputFilterStream(context.Response.Filter);
        context.Response.Filter = filter;
        context.Items.Add("OutputFilter", filter);

        // TODO: If required the request headers and content could be recorded here
    }

    private void context_EndRequest(object sender, EventArgs e)
    {
        HttpContext context = ((HttpApplication)sender).Context;
        OutputFilterStream filter = context.Items["OutputFilter"] as OutputFilterStream;

        if (filter != null)
        {
            // TODO: Log here - for now just debug.
            Debug.WriteLine("{0},{1},{2}",
                context.Response.Status,
                context.Request.Path,
                filter.ReadStream().Length);
        }
    }
}

(tenga en cuenta que la clase OutputFilterStream a la que se hace referencia en el código está en la referenciapregunta).

Sin embargo, las respuestas parecen faltar en algunos encabezados HTTP que veo en Fiddler (como "Fecha") y, lo que es más importante, cuando enciendo la compresión, las respuestas que estoy registrando no están comprimidas, mientras que lo que veo en Fiddler sí lo está.

Así que mi pregunta - ¿Es posible registrar el contenido comprimido o esto sucede en un paso posterior en el que mi módulo no puede conectarse?

Para el registro, también he intentado manejar elPreSendRequestContent Evento y la respuesta sigue sin estar comprimida.

Respuestas a la pregunta(1)

Su respuesta a la pregunta