使用patterndb和syslog的相关性

时间:2017-04-10 09:45:47

标签: syslog syslog-ng

我正在尝试使用patterndb进行关联,我的要求是当异常或消息被添加到上下文中超过4次时,在60秒内生成一条消息。这是我的patterndb xml和syslog配置文件。 / p>

的example.xml

    <patterndb version='4' pub_date='2010-10-17'>
    <ruleset name='ssh' id='123456678'>
        <pattern>ssh</pattern>
            <rules>
                <rule provider='me' id='182437592347598'  context-id='ssh-login-logout' context-timeout='60' context-scope='process'>
                    <patterns>
                        <pattern>Exception in ssp @ESTRING:SSH_USERNAME:@</pattern>
                    </patterns>
                    <actions>
<action condition='"$(context-length)" >= "4"'>

        <message>
            <values>
                <value name="PROGRAM">event</value>
                <value name="abc">Sending mail now..</value>
            </values>
        </message>
    </action>
    <action condition='"$(context-length)" < "4"'>
        <message>
            <values>
                <value name="PROGRAM">event</value>
                <value name="abc">Sending mail tommrow..</value>
            </values>
        </message>
    </action>

</actions>

                </rule>
            </rules>
    </ruleset>

</patterndb>

app1.conf

    source test_logfile {
        file("/apps/syslog-ng/etc/testfile.log");
};

parser test_pattern{
            db_parser(
                file("/apps/syslog-ng/etc/example.xml")
            );
            };

destination test_output{
        file("/apps/syslog-ng/etc/a.log" template("${abc}\n") template-escape(no));
};

log { source(test_logfile); parser(test_pattern); destination(test_output); flags(final); };

我正在将此日志消息写入testfile.log

echo“ssh:ssp中的异常java.lang.ClassNotFoundException”&gt;&gt; testfile.log

但是我没有将“abc”中存储的必需消息收到a.log中,即使将此消息写入testfile.log超过4次

0 个答案:

没有答案