Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 客户端日志记录_Javascript_Logging - Fatal编程技术网

Javascript 客户端日志记录

Javascript 客户端日志记录,javascript,logging,Javascript,Logging,我有一个包含大量JavaScript的网站,在生产过程中经常出现异常。我想使用NLog或Log4Net之类的工具来记录这些异常,但是记录器需要作为JavaScript程序的一部分在客户机上运行,并将日志项发送到服务器,以便将它们存储在服务器端 我还想记录其他信息(调试信息、性能编号)。如果我能轻松地打开或关闭记录器,那就太好了 是否有一个NLog for JavaScript这样的东西可以完成所有这些?有什么建议吗?您可以设置一个错误处理程序,并通过AJAX(XMLHttpRequest)发送日

我有一个包含大量JavaScript的网站,在生产过程中经常出现异常。我想使用NLog或Log4Net之类的工具来记录这些异常,但是记录器需要作为JavaScript程序的一部分在客户机上运行,并将日志项发送到服务器,以便将它们存储在服务器端

我还想记录其他信息(调试信息、性能编号)。如果我能轻松地打开或关闭记录器,那就太好了


是否有一个NLog for JavaScript这样的东西可以完成所有这些?有什么建议吗?

您可以设置一个错误处理程序,并通过AJAX(XMLHttpRequest)发送日志数据。以下是一个来自网站的示例:


window.onerror=函数(消息、url、行){
if(编码组件){
var req=新的AjaxRequest();
var params=“msg=“+encodeURIComponent(msg)+”和url=”+encodeURIComponent(url)+”和line=“+line;
请求设置方法(“POST”);
返回req.loadXMLDoc(“/logerror.php”,params);
}
返回false;
}
<script type="text/javascript" src="ajaxrequest.js"></script>
<script type="text/javascript">
    window.onerror = function(msg, url, line) {
        if(encodeURIComponent) {
            var req = new AjaxRequest();
            var params = "msg=" + encodeURIComponent(msg) + '&url=' + encodeURIComponent(url) + "&line=" + line;
            req.setMethod("POST");
            return req.loadXMLDoc("/logerror.php", params);
        }
        return false;
    }
</script>