如何将 Syslog 消息转换为列 [关闭]

Posted

技术标签:

【中文标题】如何将 Syslog 消息转换为列 [关闭]【英文标题】:How can i convert Syslog messages to columns [closed] 【发布时间】:2017-08-03 19:44:04 【问题描述】:

我刚刚接触了 Cisco 防火墙。防火墙由 syslog 访问。 我是使用 Syslog 的新手。从 Syslog 我可以在 txt 文件中得到这样的输出。

08-03-2017  16:45:21    Local4.Info 192.168.1.1 %ASA-6-302013: Built outbound TCP connection 922 for outside:172.16.0.6/13000 (172.16.0.6/13000) to inside:192.168.1.10/50276 (210.4.73.234/50276)
08-03-2017  16:45:09    Local4.Info 192.168.1.1 %ASA-6-305012: Teardown dynamic TCP translation from inside:192.168.1.10/50274 to outside:210.4.73.234/50274 duration 0:00:30

我希望输出类似这样。

 Built outbound , TCP , outside , 172.16.0.6/13000 , inside , 192.168.1.10/50276
Teardown dynamic, TCP , inside , 192.168.1.10/50274 , outside , 210.4.73.234/50274 

基本上我想删除不必要的单词并保留重要的单词。

【问题讨论】:

你有什么问题? 如何将输出文件转换为所需的输出格式? 【参考方案1】:

这方面的 Java 代码相当琐碎,我将其留给其他人发布。

但是,如果您需要它可重用/可扩展,我强烈建议您查看logstash/elk。使用 logstash syslog input plugin,您可以处理来自多个主机的 syslog 文件,logstash 将解析它们并将它们推送到您想要的几乎任何 columned format。

注意:不,我不为 elastic 工作,我只是这个特定开源堆栈的满意用户。

【讨论】:

以上是关于如何将 Syslog 消息转换为列 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

将行转换为列[关闭]

如何知道是不是使用 log4j 正确发送了 syslog 消息而不依赖于异常

编译器显示错误消息“从不强制转换的整数中生成指针”(反转数组)。我该如何解决这个问题? [关闭]

除了 syslog 之外,Linux 服务/守护程序文件记录最佳实践是啥? [关闭]

如何将电话簿号码转换为字母[关闭]

Ruby - 确保 Syslog 被关闭