Umbraco에서 xslt 또는 사용자 정의 컨트롤을로드하지 못할 때 발생하는 오류를 기록하는 방법이 있는지 궁금합니다. 일반적으로 컨트롤과 물건을로드 할 수 없다는 빨간색 상자가 표시됩니다. 이 기록을 올바르게 기록하는 방법이 있습니까?Umbraco CMS (.NET) : xslt/사용자 컨트롤을로드하는 중 로깅 오류
미리 감사드립니다.
Umbraco에서 xslt 또는 사용자 정의 컨트롤을로드하지 못할 때 발생하는 오류를 기록하는 방법이 있는지 궁금합니다. 일반적으로 컨트롤과 물건을로드 할 수 없다는 빨간색 상자가 표시됩니다. 이 기록을 올바르게 기록하는 방법이 있습니까?Umbraco CMS (.NET) : xslt/사용자 컨트롤을로드하는 중 로깅 오류
미리 감사드립니다.
먼저 지원되지 않습니다 ... 오류가 발생하면 HTML을 출력하고 asp.net 추적 로그에 씁니다.
어떻게 접근 할 것인가? 내 Umbraco 설치의 대부분은 예외 로깅을 위해 Elmah를 사용하고 애플리케이션 로깅을 위해 log4net을 사용합니다. 이렇게하면 출력시 오류가 발생합니다.
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() {}
}
모듈을 web.config에 추가하기 만하면됩니다. 1am 인 것에 따라 나는 시험하지 않았다. :) 그러나 전체의 개념은 움직여야한다.
우와 고마워, 아무도 대답 할 생각 없어! 나는 테스트하고 대답으로 표시 할 것이다. – MSI
나는 이것을 시험해 보았지만, MacroLogging-> Init 메서드에서 런타임 예외를 주면서, 필요한 연산에 IIS 통합 모드가 필요하다는 것을 알았고 고전적이다. 어떤 생각을 어떻게 해결할 수 있을까요? –
누군가는 적어도 답변을 게시하기를 바랍니다 ... 정말 해결책을 찾고 있습니다. – MSI