项目程序异常排查

工作了近10年的程序,6月10日还正常上传并写入了数据,在6月20日,莫名其妙的,不好使了。

现象是在上传的过程中,突然跳转到了登录页。

看到这里,同学们肯定会说,Session过期了呗,确实,开始我也是这么认为,但是这个上传时间,还不到20秒。

考虑过是程序出问题了,但是并没有异常信息。

然后就是给每一行代码加日志输出,结果更是傻眼了,每次输出代码跳出的位置,还都不一样。

仔细查看日志,发现代码跳出后,紧跟着就是站点重新启动了。

难怪没有日志记录错误,网站都给干蹦了,哪里还能记录异常信息。

于是第一时间联系Global,查看服务器信息,查看WAS信息,显示 提供服务的进程 与WPAS通信时出现严重的错误。

但是,没有application Error,没有error,就没有办法继续查询下去了。

考虑过内存小,程序运行的时候,app pool 回收了,但是从500MB扩容到1000MB,问题还是存在。

这个问题,本地没有办法重现。

上传小于1.04MB的文件,成功率高,超过这个大小,成功率就低了。

继续排除问题。。。。

2021年7月1日,问题得到了解决。

今天打算重新理一下思路,来排查这个问题,分为3个部分来排查。

1文件上传

2文件读取

3数据插入数据库

首先排查上传,在前台上传文件后,检查服务器目录,文件上传成功,能成功打开等

然后就来到了excel文件的读取,在几乎每段代码后面打上日志标注,但是运行后,每次跳出的位置都不一样,但都是在操作数据库之前,这样大致就能确认是文件读取这一块,联想到之前程序运行还是好好的,在office2016升级后,服务器上传就出现了问题,大概可能是这个问题吧

于是,打算用nopi来代替oledb的读取,

修改,测试,通过了。激动人心,整整找了块一周的问题,可能是效率太低。

但是为什么oledb,会在文件1mb左右的时候,出现读取文件然后跳出程序重启网站呢?这任然需要去查找。

You may also like...

发表回复