Umbraco CMS (.NET): أخطاء التسجيل تحميل XSLT/عناصر التحكم في المستخدم

StackOverflow https://stackoverflow.com/questions/3809618

  •  25-09-2019
  •  | 
  •  

سؤال

كنت أتساءل عما إذا كان هناك طريقة في Umbraco لتسجيل الأخطاء التي نحصل عليها عندما فشل في تحميل XSLT أو تحكم المستخدم. بشكل عام ، يظهر مربعًا أحمر يقول إنه لا يمكن تحميل عنصر التحكم والأشياء. هل هناك طريقة لتسجيل هذا بشكل صحيح؟

شكرا لك مقدما.

هل كانت مفيدة؟

المحلول

أولاً ، لا يتم دعمه حقًا ... عندما تحدث الأخطاء ، فإنه يخرج HTML ويكتب إلى سجل Trace 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. لم أختبر كما هو 1 صباحًا :) ولكن المفهوم العام يجب أن ينجح.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top