隔离日志文件中的数据

隔离日志文件中的数据

我想在日志文件中隔离错误类型。我无法为其制定逻辑。假设我的日志文件中有这些不同类型的错误。现在我只想提取这些类型。就像下面提到的日志示例一样,我有三种类型的错误:HTTP 错误、套接字超时、参数无效。我还有很多这样的。如何提取所有错误的列表?请指导。

Aug  1 04:41:47 iibapp1 user:err|error IIB[17760440]: An HTTP error occurred.
Aug  1 04:41:47 iibapp1 user:err|error IIB[17760440]: Socket Timed out'.

Aug  1 04:41:47 iibapp1 user:err|error IIB[17760440]: Invalid Parameters'.

答案1

不确定我完全理解这个问题。是什么阻止你使用eg grep?尝试

grep "An HTTP error occurred." path/to/logfile

并将结果重定向到适当的文件。

答案2

如果您知道只想查看这三个字符串,请询问grep它们:

grep -E ": An HTTP error occurred\.\$|: Socket Timed out'\.\$|: Invalid Parameters'\.\$" input

我通过强制每个文本以冒号空格 ( :) 开头以及强制它们位于行尾来对文本进行了一些锚定$$由于搜索文本中出现单引号,因此我在 grep 参数周围使用了双引号,因此句点 和被转义。

相关内容