Po pierwsze, nie jest tak naprawdę obsługiwane ... Gdy wystąpią błędy, wyprowadza html i zapisuje w dzienniku śledzenia asp.net.
Oto jak do tego doszłam. Większość moich instalacji Umbraco wykorzystuje Elmah do rejestrowania wyjątków i log4net do rejestrowania aplikacji. Powinno to spowodować błędy na wyjściu.
using System;
using System.Linq;
using System.Web;
public class MacroLogging : IHttpModule {
public void Init(HttpApplication context) {
context.LogRequest += ContextLogRequest;
}
static void ContextLogRequest(object source, EventArgs e) {
var app = (HttpApplication)source;
var context = app.Context;
context.Trace.TraceFinished += TraceFinished;
}
static void TraceFinished(object sender, TraceContextEventArgs e) {
var records = e.TraceRecords.Cast<TraceContextRecord>();
var categoryTypes = new[] {"Macro", "macro", "umbracoMacro"};
var traceOutput = records.Where(p => categoryTypes.Contains(p.Category) && p.IsWarning)));
foreach (var entry in traceOutput) {
//Your Output entry.Message
}
}
public void Dispose() {}
}
Po prostu dodaj moduł do swojego pliku web.config. Nie testowałem jak to jest 1 rano :) ale ogólna koncepcja powinna działać.
hm nadzieję, że ktoś opublikuje kilka odpowiedzi przynajmniej ... naprawdę szuka rozwiązania. – MSI