前端日志探讨一

在程序设计中日志是个很好的东西,经常帮助我们跟踪代码的运行情况,记录日志有助于我们维护管理我们的项目。

一般我们的日志在服务端,取得日志的方法也很简单,直接使用log4这样的类库就可以很好的完成所需任务。但是在特殊情况下我们可能会需要B/S架构的系统给我们留一个前端的日志。下面来探讨一二。

首先客户端可能是我们未知范围的。这种我们后续再讨论。先讨论客户端在我们控制范围内的日志。如公司内部的流程系统等内部系统。

如果你公司是不练外网的内部系统。切使用IE浏览器做为主浏览器。那可以尝试使用IE自带的Actionx控件来实现在客户端留一个前端操作日志。因为这个插件允许我们使用脚本操作本地的一些文件。

一、先打开IE浏览器,Internet选项>安全>自定义级别>ActiveX控件和插件设置为启用。

二、使用脚本调用ActiveX控件。如下方法:

//日志方法
function JSLog(message, option) {
try{
var ForAppending = 8;
var strFile = "D://SoftJSLog" + new Date().Format("yyyy-MM-dd") + ".txt";
var objFSO = new ActiveXObject("Scripting.FileSystemObject");
// 检查文件是否存在
if (objFSO.FileExists(strFile)) {
// 打开文本文件
objStream = objFSO.OpenTextFile(strFile, ForAppending, true, false);
// 写入字符串数据
if (option == "1") {
objStream.WriteLine(message + " 开始时间:" + new Date().Format("yyyy-MM-dd hh:mm:ss"));
}
else {
objStream.WriteLine(message + " 结束时间:" + new Date().Format("yyyy-MM-dd hh:mm:ss"));
}
objStream.Close(); // 关闭文件
}
else {
var objStream = objFSO.CreateTextFile("D://SoftJSLog" + new Date().Format("yyyy-MM-dd") + ".txt", true);
// 写入字符串数据
if (option == "1") {
objStream.WriteLine(message + " 开始时间:" + new Date().Format("yyyy-MM-dd hh:mm:ss"));
}
else {
objStream.WriteLine(message + " 结束时间:" + new Date().Format("yyyy-MM-dd hh:mm:ss"));
}
objStream.Close(); // 关闭文件
}
}
catch (e)
{
//alert(e);
}
}

三、调用js方法留下日志。

找到客户端的路径在分析日志。

时间: 2024-10-05 17:14:41

前端日志探讨一的相关文章

前端日志探讨二

在前面一篇文章中我探讨了下在IE浏览器的情况下使用前端日志,但我们知道很多人不使用IE作为默认浏览器. 下面探讨下在高版本chorme浏览器里的日志存储和发送. 由于chorme浏览器为了安全问题在今年已经停止使用插件这种方式,导致现在不允许在chorme中使用插件来更改我们本地的文件这样的操作了.--(吐槽一下,禁用插件导致了我的报表打印功能无法使用了.原来的排版漂亮的报表现在无法再chorme上使用,头疼) 但是由于chorme是一款功能强大的浏览器,首先他为我们提供了一些高级特性.如我们现

前端日志

现今有很多无法预知的错误出现,但又不是所有的错误都可以使用pc端的浏览器重现问题所在, 所以前端日志很有必要,日志的出现就是记录某些东西,让开发人员更好锁定问题所在,而后台 在这方面的工作就很完善,这样大大的提高追踪问题速度,然而前端的兼容性是一件很头痛的问题, 有可能写了一段很新的技术代码,然而某些浏览器不兼容而挂了,这样很可能无法追踪到问题, 所以前端日志这个时刻起的作用就起来了. 前端日志使用到技术一般就几个,一个是try()catch(e){}和onerror,这两个,如果有必要的也会使

【PC网站前端架构探讨系列】关于中小型PC网站前端架构方案的讨论与实践

 说在前面 好几天没更新这个系列文章了,这段时间还是在研究这块东西,遇到的各种奇葩问题,最后写完,只是调试就花了两天,果然发现在和大神之间的距离越来越远,在加上大部分时间在追求自己的梦想,梦想同样也是遥遥无期啊!一直在思考星星的那句话,人到底该不该追求梦想,做个咸鱼到底好不好的,吃吃喝喝睡睡的,反正最近感悟挺多,抽时间写个文章,好好和大家聊聊,把我的心里话告诉大家,程序员不容易,寻梦者更难啊!比如,这个所谓的pc网站的前端框架,这对一个做后台而且还是多年一直在做C#.JAVA没怎么写脚本的我来说

安装spy-debugger查看前端日志

有时需要查看前端页面日志,但是前端同学有时忘记开启vConsole.为了调试方便,最好在本地可以查看前端日志,做到一劳永逸. 1.安装node 网上搜教程 2.安装spy-debugger sudo npm install spy-debugger -g 3.启动spy-debugger spy-debugger 4.手机安装证书,开启代理 ip:本机IP port:9888 5.操作查看请求 原文地址:https://www.cnblogs.com/csj2018/p/10594245.htm

openresty收集前端日志

环境:centos-6.5 依赖:yum install -y gcc gcc-c++ 下载pcre,openssl,openresty wget https://sourceforge.net/projects/pcre/files/pcre/8.39/pcre-8.39.tar.gz wget https://www.openssl.org/source/openssl-1.0.1t.tar.gz wget  https://openresty.org/download/openresty-

前端兼容性探讨

这里和朋友们简单探讨一下个人对于前端兼容性的一些理解: 在项目中,前端主要处理html,css,javaScript代码,当然还有可能接触到razor等渲染引擎方面的知识,不过主要处理的还是HTML.CSS.JavaScript.个人认为兼容性的问题也是对这三个方面进行处理. 首先,是html方面兼容性的处理,大家都知道,虽然有一个W3c标准的存在去规范html.xml/xhtml/css/javaScript/dom的标准,但是这只是个标准,真正体现出效果的是浏览器,而浏览器却有很多种,fir

温故而知新 前端日志上传新姿势 navigator.sendBeacon(信标)

原文地址:https://mp.weixin.qq.com/s/-moAfEZicrFmun4qfWLdOQ 简单示例js: var data = JSON.stringify({ name: 'Berwin' }); navigator.sendBeacon('http://localhost:80/index.php', data) 简单php示例: 由于是新标发送的数据是 "text/plain" 数据类型,所以用$GLOBALS['HTTP_RAW_POST_DATA']接受,

前端性能概述

1.认识前端性能 不管你的网站设计的有多没牛逼,后端有多么屌,对于用户来说全部都是无感知的,用户只关心页面打开的速度,而前端性能表现很大程度上影响着用户的这种感知. 改善前端的性能对用户感知的整体性能提升有很大的帮助,如果将后端的响应时间缩短一半,对用户来说整体的响应时间只能减少5%-10%,但如果换作前端,其整体响应时间可以减少40%-45%. 相比后端,对前端的改善工作量要小很多,性价比极高! 只有10%-20%的最终用户响应时间花在了下载html文件上,其他的80%-90%是花在了下载页面

centos7搭建ELK Cluster日志分析平台(一)

应用场景:ELK实际上是三个工具的集合,ElasticSearch + Logstash + Kibana,这三个工具组合形成了一套实用.易用的监控架构, 很多公司利用它来搭建可视化的海量日志分析平台. 官网下载地址:https://www.elastic.co/downloads  Elasticsearch: 一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口. Elasticsearch是用Java开发的,并作为Apache许可条款