AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 398410
Accepted
Lee Lowder
Lee Lowder
Asked: 2012-06-14 10:23:03 +0800 CST2012-06-14 10:23:03 +0800 CST 2012-06-14 10:23:03 +0800 CST

修复 graylog2 网络界面上的严重性

  • 772

我正在使用 logstash 从一组 webapps 中收集日志并将它们发送到 graylog2 以供集中查看。

我有以下用于标记化的过滤器:

 grok {
   type => "webapps"
   pattern => "^%{TIME:timestamp} \[%{NOTSPACE:thread}\]%{SPACE}%{WORD:loglevel}%{SPACE}%{JAVACLASS:class} - %{GREEDYDATA:short_message}"
   drop => false
   debug => "true"
   add_tag => [ "%{loglevel}" ]
 }

日志级别将按照 TRACE、DEBUG、INFO、NOTICE、ERROR、FATAL 的顺序排列。

最初,所有内容都显示为“警报”(在 ruby​​/graylog-server 中的数值为 5,并在源代码中标记为“未知”)。

然后我添加了一系列 mutate 过滤器,比如这个:

 mutate {
   type => "webapps"
   tags => "INFO"
   add_tag => [ "ll_%{@level}", "mutated" ]
   replace => [ "@level", "6" ] # informational
 }

这让我更接近显示在网络界面中的正确日志级别/严重性,但所有“信息”消息都显示为调试消息。

我写了一个脚本来查看 elasticsearch 数据并根据它应该是什么来设置级别字段。

  • 调试:7
  • 信息 : 6
  • 警告:4
  • 错误:3
  • 关键:2

0、1 和 5 级未被使用,因为消息来源表明这些是保留的。

但是这个脚本在资源方面很昂贵,而且当它试图更新的数据集以每秒数百或数千条消息的速度增长时,我认为它不会很好地工作。

我注意到的另一件事是,当我在标签中使用类似“@source”的内容时,会显示正确的值。当我执行“@level”时,我将其作为文字插入,这表明它不是已指示的预定义字段。

我已经稍微查看了资料来源,但并不详尽,所以我可能只是错过了它。

问题是,我需要在我的 mutate 过滤器中更改什么才能使“信息”在 graylog2 界面中显示为“信息”?

graylog logstash
  • 1 1 个回答
  • 1979 Views

1 个回答

  • Voted
  1. Best Answer
    Lee Lowder
    2012-07-07T09:54:24+08:002012-07-07T09:54:24+08:00

    我尝试过的任何方法都不起作用,邮件列表也无济于事。

    我最后做的是停止为此使用 logstash,并添加一个 logback-gelf jar 并添加到我的 logback 配置中。

    从那时起,它就像一个魅力。

    • 0

相关问题

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve