Olası Çoğalt:
Logging Clientside JavaScript Errors on ServerGünlüğü istemci tarafı hataları
Nasıl sunucuya istemci tarafında javascript hataları oturum açabilir? JQuery ve MVC kullanıyorum.
Olası Çoğalt:
Logging Clientside JavaScript Errors on ServerGünlüğü istemci tarafı hataları
Nasıl sunucuya istemci tarafında javascript hataları oturum açabilir? JQuery ve MVC kullanıyorum.
İstemci tarafı hataları olduğundan, bunları XMLHttpRequest kullanarak sunucuya göndermeniz gerekir.
window.onerror = function (msg, url, line)
{
var message = "Error in "+url+" on line "+line+": "+msg;
$.post("logerror.aspx", { "msg" : message });
}
Sen hiç XMLHttpRequest
kullanan bir appender var benim log4javascript, kullanabilir line
ve url
8.
window.onerror = function (msg, url, line) benim için çalıştı – timborden
Bu yaklaşımla bilinmesi gereken herhangi bir güvenlik sorunu var mı? –
@Arman: Hiç konuşmak yok. Birisi özel bir mesajla 'logerror.aspx' isteğini yerine getirebilir, ancak sunucu taraf kodunuz katı olduğu sürece saldırı vektörleri yoktur. –
öncesinde IE sürümlerinde çok yanlış olabilir unutmayın: Sen try...catch
ifadeleri veya window.onerror
kullanabilirsiniz sunucuya giriş yapın:
var log = log4javascript.getLogger("serverLog");
var ajaxAppender = new log4javascript.AjaxAppender("clientlogger.jsp");
log.addAppender(ajaxAppender);
try {
nonExistentFunction();
} catch(ex) {
log.error("Something's gone wrong!", ex);
}
Bu öneri için teşekkürler. Bunu log4net'e bağlamak mümkün olup olmadığını biliyor musunuz? –
Elle yapmak için yeterince kolay. AjaxAppender'ın günlüğe kaydetme verilerini gönderdiği varsayılan yol, mesaj, zaman damgası, önem derecesi vb. Gibi günlüğe kaydetme olayının yönlerini temsil eden parametreler içeren bir HTTP gönderisidir. Sunucuda, bir sayfanız veya HTTP işleyicinizin post ve post parametrelerine dayanarak bir log4net araması yapın. –
JSNLog (jsnlog.com) sizin için tüm bunları kutudan çıkarır. JavaScript kitaplığından günlük iletileri alan ve onları Log4Net, NLog veya Elmah gibi sunucu tarafındaki kayıt defteri kitaplığına geçiren bir JavaScript günlük kütüphanesi ve bir sunucu tarafı dll'den oluşur. Web günlüğünüzde JavaScript kaydedicilerinizi yapılandırmanızı sağlar. Ve çift mesajlar, mesaj serme ve tarayıcı türüne göre filtreleme gibi her türlü özelliğe sahiptir. – user1147862
Şu anda Elmah günlük çerçevesini kullanıyorum. Buna bir çözüm bağlamanın bir yolu var mı? –
Son zamanlarda bu güzel hosted çözümü buldum: http://errorception.com/ –
JSNLog (jsnlog.com), JavaScript'inizdeki istemcide dizeleri ve nesneleri günlüğe kaydetmenize ve Elmah kullanarak sunucuda saklamanıza olanak tanır. JSNLog'u yüklediğinizde sadece Elmah'ı belirtirsiniz. – user1147862