小编Pri*_*hah的帖子

多个Grok过滤器不存储第一个过滤器匹配记录

我正在使用Logstash来解析postfix日志.我主要专注于从postfix日志中获取退回的电子邮件日志,并将其存储在数据库中.

为了获取日志,首先我需要找到与我的message-id对应的postfix生成的ID,并使用该Id,我需要查找电子邮件的状态.对于以下配置,我可以获取日志.

grok {
       patterns_dir => "patterns"
       match => [
            "message", "%{SYSLOGBASE} %{POSTFIXCLEANUP}",
            "message", "%{SYSLOGBASE} %{POSTFIXBOUNCE}"
        ]
        named_captures_only => true
    }
Run Code Online (Sandbox Code Playgroud)

我使用以下if条件来存储与模式匹配的日志:

if "_grokparsefailure" not in [tags] {
   #database call
}
Run Code Online (Sandbox Code Playgroud)

如您所见,我使用两种模式从一个日志文件中查找相应的两个不同日志.

现在,我想根据标签区分两种模式.所以我修改了我的配置如下:

  grok {
       patterns_dir => "patterns"
       match => [
            "message", "%{SYSLOGBASE} %{POSTFIXBOUNCE}"
        ]
        add_tag => ["BOUNCED"]
        remove_tag => ["_grokparsefailure"]
        named_captures_only => true
    }

    grok {
       patterns_dir => "patterns"
       match => [
            "message", "%{SYSLOGBASE} %{POSTFIXCLEANUP}"            
        ]
        add_tag => ["INTIALIZATION"]
        remove_tag => ["_grokparsefailure"]
        named_captures_only => true
    }
Run Code Online (Sandbox Code Playgroud)

现在,它只存储%{POSTFIXCLEANUP}模式日志.如果我颠倒了订单,它只存储%{POSTFIXBOUNCE}模式.

因此,消除,如果条件下,我发现从第一过滤器正在分析该消息有"_grokparsefailure"标签和第一过滤器标签,并且因为它没有存储该记录之后.

任何人都可以告诉我需要做些什么来纠正这个问题?我有没有犯错?

logstash logstash-grok

10
推荐指数
1
解决办法
1万
查看次数

未捕获的参考错误:谷歌未定义谷歌图表

我正在尝试在 android 应用程序中加载 Google 图表。但是,它向我抛出未定义 google 的错误。下面是我的 HTML 文件和 JavaScript 文件。

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Patient Vitals</title>

<link href="../../common/scripts/lib/css/jquery.mobile.theme-1.1.0.css" rel="stylesheet" type="text/css" />
<link href="../../common/scripts/lib/css/jquery.mobile-1.0.1.min.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" href="../../common/scripts/lib/css/jquery.mobile.datebox.css" />
<link href="../scripts/css.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />

<script src="../../common/scripts/jsapi.js" type="text/javascript">
    google.load('visualization', '1.0', {'packages':['corechart']});
</script>
<script src="../scripts/patient_vitals.js"></script>
</head>
<body>
        <div class="PT_Care_vitals_swa_ofcurv_left"  onclick="getPatientVitalInfo();"</div>   
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

患者生命体征.js:

getPatientVitalInfo =function()
{
   logInformation("Get Patient Vital Information ");
   alert("Get Patient Vital info");
   //code to retieve data from database
   drawChart(temp); …
Run Code Online (Sandbox Code Playgroud)

javascript android google-visualization

2
推荐指数
1
解决办法
2万
查看次数

Spring AMQP:消息优先级无法正常工作

我正在使用Sprin AMQP的rabbittemplate通过RabbitMQ发送和接收消息.我能够发送和接收消息,Howver,我想用消息附加优先级.

例如,如果我正在推送1000条消息,并且假设奇数消息的优先级为1,偶数消息的优先级为0,然后我开始使用消费者,那么消费者应该首先接收奇数消息,然后是偶数消息.

这是我的代码:制片人:

public void sendMessage(int i) throws IOException {
    Record r = new Record();
    r.setFrom((i + 1));
    r.setTo("infoimage");
    r.setMessage("Hi Pritish.");
    MessageProperties prop = new MessageProperties();
    prop.setPriority(i%2);
    byte[] rByte = serialize(r);
    Message m = new Message(rByte, prop);
    rabbitTemplate.convertAndSend(queueName, m);
}
Run Code Online (Sandbox Code Playgroud)

消费者:

public MessageListener exampleListener() {
    return new MessageListener() {
        public void onMessage(Message message) {
     //do some job
     }
Run Code Online (Sandbox Code Playgroud)

}; }

难道我做错了什么?有人可以帮我解决这个问题吗?

rabbitmq spring-amqp

2
推荐指数
1
解决办法
1268
查看次数

GO 中字符串的 ASCII 编码

在 Ruby 中,您可以将字符串编码为 ASCII,如下所示:

str.force_encoding('ASCII')
Run Code Online (Sandbox Code Playgroud)

我们如何在 Go 中实现相同的目标?

encoding ascii go

2
推荐指数
1
解决办法
7604
查看次数