summaryrefslogtreecommitdiffstats
path: root/source/configuration/modules/mmcount.rst
blob: de3247d1f68d52036f90f04a9314a94853b49cb2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
*******
mmcount
*******

===========================  ===========================================================================
**Module Name:**             **mmcount**
**Author:**                  Bala.FA <barumuga@redhat.com>
**Available since:**         7.5.0
===========================  ===========================================================================


**Status:**\ Non project-supported module - contact author or rsyslog
mailing list for questions


Purpose
=======

Message modification plugin which counts messages.
        
This module provides the capability to count log messages by severity
or json property of given app-name. The count value is added into the
log message as json property named 'mmcount'.
 

Examples
========

Example usage of the module in the configuration file.

.. code-block:: none

   module(load="mmcount")

   # count each severity of appname gluster
   action(type="mmcount" appname="gluster")

   # count each value of gf_code of appname gluster
   action(type="mmcount" appname="glusterd" key="!gf_code")

   # count value 9999 of gf_code of appname gluster
   action(type="mmcount" appname="glusterfsd" key="!gf_code" value="9999")

   # send email for every 50th mmcount
   if $app-name == 'glusterfsd' and $!mmcount <> 0 and $!mmcount % 50 == 0 then {
      $ActionMailSMTPServer smtp.example.com
      $ActionMailFrom rsyslog@example.com
      $ActionMailTo glusteradmin@example.com
      $template mailSubject,"50th message of gf_code=9999 on %hostname%"
      $template mailBody,"RSYSLOG Alert\r\nmsg='%msg%'"
      $ActionMailSubject mailSubject
      $ActionExecOnlyOnceEveryInterval 30
      :ommail:;RSYSLOG_SyslogProtocol23Format
   }