zoukankan      html  css  js  c++  java
  • 2018年5月2日 问题记录

    问题:
    1.服务上正式环境没有日志也没有MongDB日志
    2.文本日志只有部分,而且只有开始没有结束
    3.数据库连接字符串解密可能会存在问题。


    分析:
    1.如果是数据库连接不上导致的,那么只需要将本地数据库连接改错,就可还原改BUG
    并且肯定会有MongoDB日志,但是现在没有日志。
    2.MongoDB没有日志是否是地址配错。或者配置根本没有生效
    但是经检验配置没错。(此时应该怀疑配置文件修改是否正确,后来发现是修改的文件位置不对,配置未生
    效)
    3.没有记录日志最后查出是因为MongoDB实例化在数据库实例化后,如果数据库实例化报错,则直接进入
    Catch,但此时MongoDB对象还是空,故没有写入日志。
    4.文本日志记录没有结束并且没有全部执行这个很奇怪,检查发现异常捕捉没有包括到日志记录方法。
    加上了异常捕捉后,发现是文本日志记录文件被占用。

    经验:

    1. 控制台程序的配置设置是在Debug下的exe.Config文件,不是项目中的App.Config文件

    2. MongoDB服务实例化应该在Try方法体的行首,否则,异常捕捉时该对象还没实例化,就不能记录到日志

    3. 异常捕捉应该要把所有的代码都囊括在大括号内,以保证任何一行代码出错都可以准确知道是哪里错了。

    像这个文本日志导致文件占用的问题,打死都没想到。但他就是发生了。

    问题总结:

    1.拷贝代码容易烤漏或者忘记替换,所以,以后拷贝时一定要看清楚并且检查。如果是重复的代码,一定要提取出来,做成公共方法。(这一点可以避免很多拷贝错漏的问题)

    2.MongoDB日志一定要确保在任何情况下是可以捕捉到并记录的。例如:MongoDb对象一定要new在前面
    异常捕捉确保能够写入日志
    3.代码风格保持一致,代码规范时刻谨记
    4.可变的变量都需要放在配置中可配置
    5.服务等不方便监控的程序一定要日志详细,并且各种可能都要试到

  • 相关阅读:
    东软中标清华大学一站式服务平台项目
    抢占DevOps制高点,东软UniEAP&SaCa平台强势崛起
    智慧监狱来了!SaCa EMM 助推现代监狱建设迈上新台阶
    移动金融办公威胁不断,这些坑千万别跳!
    比悲伤更悲伤的故事,那就是...
    这还是你见过的大学实验室吗?
    越智能?越危险?技术到底应不应该进步?
    新一代的IT实验室长啥样?
    产品“佩奇”闹元宵,新春点亮新网站
    危机四伏的千亿级金融放贷市场,我们能做什么?
  • 原文地址:https://www.cnblogs.com/opts/p/8980484.html
Copyright © 2011-2022 走看看