logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

qsexec - parses the data received via stdin and executes the defined command on a pattern match.

Author

       Pascal Buchbinder, http://mod-qos.sourceforge.net/

mod_qos utilities 11.74                             May 2023                                           QSEXEC(1)

Description

       qsexec reads log lines from stdin and searches for the defined pattern. It executes the  defined  command
       string on pattern match.

Example

       Executes  the  deny.sh  script  providing  the  IP  address of the client causing a mod_qos(031) messages
       whenever the log message appears 10 times within at most one minute:
         ErrorLog     "|/usr/bin/qsexec     -e     \'mod_qos\(031\).*,     c=([0-9a-zA-Z:.]*)\'     -t     10:60
       \'/usr/local/bin/deny.sh $1\'"

Name

       qsexec - parses the data received via stdin and executes the defined command on a pattern match.

Options

       -e <pattern>
              Specifies the search pattern causing an event which shall trigger the command.

       -t <number>:<sec>
              Defines  the  number of pattern match within the the defined number of seconds in order to trigger
              the command execution. By default, every pattern match causes a command execution.

       -c <pattern> [<command string>]
              Pattern which clears the event counter. Executes optionally a command if an event command has been
              executed before.

       -p     Writes data also to stdout (for piped logging).

       -u <name>
              Become another user, e.g. www-data.

       <command string>
              Defines the event command string where $0-$9 are substituted by  the  submatches  of  the  regular
              expression.

See Also

qsdt(1),   qsfilter2(1),  qsgeo(1),  qsgrep(1),  qshead(1),  qslog(1),  qslogger(1),  qspng(1),  qsre(1),
       qsrespeed(1), qsrotate(1), qssign(1), qstail(1)

Synopsis

       qsexec  -e  <pattern>  [-t  <number>:<sec>]  [-c  <pattern> [<command string>]] [-p] [-u <user>] <command
       string>

See Also