我正在寻找解析日志文件(通常由某些字符分隔的文本文件),并且我希望通过制作一个可以接受描述传入日志文件格式的 xml 文件的解析器来使工作变得更容易。这样我就可以向我的解析器提供任何类型的日志文件以及我的解析器的 xml 描述并提取有用的信息。我不确定如何一般性地描述 xml 中的日志文件格式。我也不确定如何将日志文件中的行与给出的描述进行匹配。我将非常感谢对此的任何帮助和指导。非常感谢所有回复的人。
最佳答案
<logfile location="/usr/local/logs/logfile.log">
<delimiter>#</delimiter>
<format>
<field index="1" length="10">
<target>Date</target>
</field>
<field index="2">
<target>Message</target>
</field>
<field index="3" length="20">
<target>Component</target>
</field>
<field index="5" length="20">
<target>Details</target>
</field>
</format>
</logfile>
您的代码将读取此 XML 并根据此处定义的规则动态解析日志文件中的每一行。然后,程序会将这些值存储在适当的“目标”字段中。
日志文件:
2012/12/12 10.10.10#Critical application state#Error in component XYZ#Useless information#Useful information
输出:
Date: 2012/12/12
Message: Critical application state
Component: Error in component XYZ
Details: Useful information
关于java - 用xml编写的文件描述符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11402523/