Java中的日志文件解析器

时间:2012-08-02 18:59:04

标签: java database performance parsing design-patterns


我正在尝试为我的应用程序设计Log File Parser。我有数千个具有相同数据模式的日志文件,我的目标是首先解析数据并将其存储在数据库中。
日志文件具有以下模式 -

a=some_value_1 b=some_value_2 c=some_value_3 d=some_value_4
a=some_value_5 b=some_value_6 c=some_value_7 d=some_value_8
a=some_value_9 b=some_value_10 c=some_value_11 d=some_value_12
a=some_value_13 b=some_value_14 c=some_value_15 d=some_value_16

我最初的想法是使用InputStreamReader逐行读取所有文件,并且每行中的每个文件都选择数据并将其提取到db。对某些文件似乎很好,但性能明智我需要改进我的设计。有人可以建议一些更好的设计模型/架构吗?

2 个答案:

答案 0 :(得分:2)

我建议最好使用BufferedReader代替InputStreamReader。你的任务的解析部分现在看起来并不是很难。

答案 1 :(得分:1)

模式很棒,但只有在它们有意义时才应使用它们。这里不需要特殊模式:只需遍历文件;对于每个文件,读取它,并根据需要执行插入操作。使用main []方法,程序在单个文件/类中不应占用超过50行。小而干净的代码比复杂的大代码要好得多。

相关问题