十年磨剑,序篇何其珍贵?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1775个文字,预计阅读时间需要8分钟。
记得几年前不拘泥于开发什么系统,都会引入log4net进行系统日志记录,当时只沉迷于这个组件带来的强大日志功能。不过,很快我们就尝到了恶果,经常在日志无输出时,试了google也出不来不。
记得几年前不管开发什么系统,都会引入log4net进行系统的日志记录,当时只沉迷于这个组件带来的超强日志功能。不过很快我们就尝到了恶果,经常在日志无输出时,在试了google出来不知道原因的解决方法失败后,只能将log4net源码全部attach上,慢慢的一行一行追踪这个庞大的类库来找出原因。
有时我们甚至不得不进行日志的日志设计,在日志失败时,使用我们自己的,最直接的,最简单的,最少出错的方式来记录日志的出错信息。
而在我们头痛时,那个看似可应付无穷变化的组件却几乎一次也没有给我们带来惊喜。
日志永远在Warn级别输出,日志永远存在系统的D盘根目录/系统名称下,异常和警告邮件永远都会发向开发组的一个共用mail,日志的格式更是从来没有变过,谁没事天天会去琢磨日志是不是该增加一个什么记录?就算要增加,那也几乎要修改所有调用日志的地方,幻想只通过修改那个格式配置文件就行?
当我们最终想要换掉这个日志组件,重新换上一个不超过100行的自己写的日志类时,这时才发现日志的变化点在哪里?原来日志模块可能的变化是抽掉整个日志模块,而不是整天考虑是日志在C盘还是D盘,是记录Error还是Warn,是要输出日志到Console还是资料库?
为什么会这样,为什么该变的没有变,不该变的又频繁在变?
现在企业开发有很多平台和框架,像.net的Enterprise Libaray和java的SSH等。
无论是何种方式,何种平台,都无法逃避系统开发的一般问题域的处理。例如如何进行数据访问,如何输出日志,如何处理错误,如何读取系统配置。。。
本文共计1775个文字,预计阅读时间需要8分钟。
记得几年前不拘泥于开发什么系统,都会引入log4net进行系统日志记录,当时只沉迷于这个组件带来的强大日志功能。不过,很快我们就尝到了恶果,经常在日志无输出时,试了google也出不来不。
记得几年前不管开发什么系统,都会引入log4net进行系统的日志记录,当时只沉迷于这个组件带来的超强日志功能。不过很快我们就尝到了恶果,经常在日志无输出时,在试了google出来不知道原因的解决方法失败后,只能将log4net源码全部attach上,慢慢的一行一行追踪这个庞大的类库来找出原因。
有时我们甚至不得不进行日志的日志设计,在日志失败时,使用我们自己的,最直接的,最简单的,最少出错的方式来记录日志的出错信息。
而在我们头痛时,那个看似可应付无穷变化的组件却几乎一次也没有给我们带来惊喜。
日志永远在Warn级别输出,日志永远存在系统的D盘根目录/系统名称下,异常和警告邮件永远都会发向开发组的一个共用mail,日志的格式更是从来没有变过,谁没事天天会去琢磨日志是不是该增加一个什么记录?就算要增加,那也几乎要修改所有调用日志的地方,幻想只通过修改那个格式配置文件就行?
当我们最终想要换掉这个日志组件,重新换上一个不超过100行的自己写的日志类时,这时才发现日志的变化点在哪里?原来日志模块可能的变化是抽掉整个日志模块,而不是整天考虑是日志在C盘还是D盘,是记录Error还是Warn,是要输出日志到Console还是资料库?
为什么会这样,为什么该变的没有变,不该变的又频繁在变?
现在企业开发有很多平台和框架,像.net的Enterprise Libaray和java的SSH等。
无论是何种方式,何种平台,都无法逃避系统开发的一般问题域的处理。例如如何进行数据访问,如何输出日志,如何处理错误,如何读取系统配置。。。

