在日志中快速搜索

ami*_*mit 4 database logging xml-database

我和另一篇文章中描述的人有同样的问题.我的应用程序的日志文件很大(~1GB),而grep用于关联日志文件中的信息非常繁琐.现在我使用''less''工具,但它也比我想要的慢.

我在考虑加快搜索速度.有以下几种方法:首先,用XML生成日志并使用一些XML搜索工具.我不确定使用XML搜索会获得多少加速(我猜不多,因为非索引文件搜索仍需要很长时间).

其次,使用XML数据库.这会更好,但我在这里没有太多背景.

第三,使用(非XML)数据库.这有点单调乏味,因为必须编写表模式(上面的第二个选项也可以完成吗?).我还预见到一开始会改变很多模式以包含常见用例.理想情况下,我想要一个比完整的数据库更轻的东西来存储日志.

第四,使用lucene.它似乎符合目的,但有一种简单的方法来指定当前用例的索引吗?例如,我想说"每当你看到'迭代'这个词时索引".

你有什么意见?

osc*_*kuo 8

问题是使用XML将使您的日志文件更大我建议按日期或行分割您的日志文件否则使用基于文件的数据库引擎,如sqlite


Jon*_*eet 6

一块技嘉并不是那么大,真的.你试图用这些日志文件做什么样的"关联"?我经常发现编写一个自定义程序(或脚本)以特定方式处理日志文件比尝试创建一个数据库模式来处理你想要用它做的所有事情更简单.当然,如果您的日志文件由于某种原因难以解析,那么尝试修复该方面可能是值得的.

(顺便说一下,我同意kuoson - XML几乎肯定不是要走的路.)