Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用txt文件或sql数据库作为系统日志记录?_Sql_Database_Logging - Fatal编程技术网

使用txt文件或sql数据库作为系统日志记录?

使用txt文件或sql数据库作为系统日志记录?,sql,database,logging,Sql,Database,Logging,我正在创建一个日志文件来保存用户活动 包括:添加、编辑、删除订户、模板和发送邮件 这些都是记录,因为如果出现任何问题,我们可以追究责任 对于文本文件,有一个记录的限制,一旦达到限制的数量,该文件将不再工作。所以缺点是我必须定期监控记录 对于sql文件,还有更复杂的问题,因为我必须为我的记录设计表结构 既然记录不那么重要,它可能就没有那么重要了 那么,可以克服使用文本文件的限制吗?对于用户视图,或者如果有人出错,我可以检查记录以了解是谁出错了为什么文本文件停止工作?而且,您能否不定期地旋转日志文件

我正在创建一个日志文件来保存用户活动 包括:添加、编辑、删除订户、模板和发送邮件 这些都是记录,因为如果出现任何问题,我们可以追究责任

对于文本文件,有一个记录的限制,一旦达到限制的数量,该文件将不再工作。所以缺点是我必须定期监控记录

对于sql文件,还有更复杂的问题,因为我必须为我的记录设计表结构 既然记录不那么重要,它可能就没有那么重要了


那么,可以克服使用文本文件的限制吗?

对于用户视图,或者如果有人出错,我可以检查记录以了解是谁出错了为什么文本文件停止工作?而且,您能否不定期地旋转日志文件,甚至在达到某个大小限制时旋转日志文件?所以通常数据库不用于日志记录?这取决于。正如你所描述的,这是一种权衡。然而,文本文件的大小受到限制并不是我听说过的一个原因。登录到数据库可以更轻松地搜索和查询记录。为了提高某些访问模式的性能,您可能实际上希望在数据库中保留的日志项少于在平面文件中保留的日志项。您在文本文件大小方面遇到了什么限制?据我所知,对文本文件大小的唯一限制是文件系统的最大文件大小——在FAT32中(现在应该很少见),这是4GB,而在NTFS中,这几乎是16EB。您使用的是哪个操作系统和文件系统?