暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

ASP.Net之笔记12-10(日志加上 观察者模式)

百变则是新 2019-10-29
298


日志加上 观察者模式
1、现在的日志是写到了日志文件中,放在磁盘上。随着后续的需求,也有可能要写到数据库中。再随着后续的需求,可能要求写到缓存数据库中(MongoDB)。
2、总之,要写到不同的地方,写入的个数也不确定,这个怎么解决?使用观察者模式。
   1)一种是:接口 和 集合 配合的方式。
        (1)遍历接口对应的集合。对于每一种操作方式,都要有一个类型,并实现这个接口。
        (2)然后将每个操作方式的对象添加到集合中来。
        (3)发消息的时候,遍历对口对应的集合,调用接口中规定的方法。
    2)另外一种:委托、事件。咱们把拿到的消息直接传递到委托里面去。不管消息写到哪里去,我们都定义一个与之对应的方法,然后把这个方法注册到委托里面就行了。拿到消息后,调用委托,消息自然就写到对应的地方去。
        (1)委托可以注册多个方法。
3、我们可以根据文件的大小来限制创建日志文件的方式。比如:1个小时创建一个,或者 超过10M创建一个,或者 一天创建一个。
4、日志的处理:
    1)对于没有捕获的异常,在Application_Error()方法中处理。
    2)记录日志。
    3)把错误消息写到错误消息队列。
    4)启动新线程不断把日志写到日志文件中
    5)这时候,我们又发现日志 要写到不同的地方去(比如:文件中,数据库中,其它缓存库中),这时候,我们又应用了观察者模式。
    6)Log4Net:就是应用了观察者模式。


文章转载自百变则是新,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论