rsyslog를 사용하면 규칙 세트의 작업 내에 규칙 세트를 포함할 수 있습니까?

rsyslog를 사용하면 규칙 세트의 작업 내에 규칙 세트를 포함할 수 있습니까?

이 질문은 혼란스러울 수 있습니다... 내가 가진 것:

*.local1 호출 규칙 1

a1과 a2의 두 가지 작업이 있는 규칙 세트 rule1이 있습니다. a1이 실패하는 경우에만 a2를 실행하십시오.

ruleset(name="rule1"){action(),
                      action(action.execOnlyWhenPreviousIsSuspended="0n")}

내가 원하는 것은 액션 a2가 새로운 규칙 세트 rule2를 호출하여 액션 a3과 4를 수행하는 것입니다.

그게 가능합니까?

또는 이전 규칙이 실패하는 경우에도 실행되는 규칙 1에 a3이 있을 수 있다면 그 문제도 해결될 수 있다고 생각합니다.

감사해요.

답변1

블로그에서 언급한관련된 링크들문서에 예제가 있습니다.

module(load="imptcp" keepalive="on")
# use imptcp just as example for bind ruleset below
ruleset(name="rs1") {
        action(type="omfile" File="/var/log/test1.log")
}
ruleset(name="rs2") {
        action(type="omfile" File="/var/log/test2.log")
        call rs1
}
input(type="imptcp" port="13514" ruleset="rs2")

원래 예제에 맞게 사용자 정의되지는 않았지만 조정이 가능해야 합니다.

  1. 규칙 세트 "rs2"로 입력이 전송되었습니다.
  2. "rs2"가 파일에 저장되고(작업) "rs1"이 호출됩니다.
  3. "rs1"이 두 번째 파일에 저장되었습니다(작업).

답변2

나는 당신이 "call"문을 찾고 있다고 생각합니다.https://www.rsyslog.com/doc/v8-stable/rainerscript/rainerscript_call.html

관련 정보