msg
rsyslog를 사용하여 필드의 선행 및 후행 공백을 잘라내고 싶습니다 . 라는 함수가 있다고 읽었 rtrim
는데 ltrim
RainierScript에서 함수를 사용하는 방법에 대한 설명을 찾을 수 없습니다. 누구든지 이러한 기능의 예를 보여줄 수 있다면 매우 감사하겠습니다. 내 현재 구성은 다음과 같습니다.
module(load="imudp")
input(type="imudp" port="514" ruleset="forward")
template(name="RFC5424_IP" type="string"
string="<%PRI%>1 %timegenerated:::date-rfc3339% %fromhost-ip% %APP-NAME% %PROCID% %MSGID% %STRUCTURED-DATA% %msg%"
)
ruleset(name="forward") {
action(type="omfwd"
protocol="tcp"
target="127.0.0.1"
port="40514"
Template="RFC5424_IP"
TCP_Framing="octet-counted"
)
}
답변1
이를 사용하여 set
json 값 트리 상단에 새 json 변수(일반적으로 동일한 이름)를 만든 다음 아래와 같이 템플릿에서 해당 변수를 참조할 수 있습니다.
template(name="RFC5424_IP" type="string"
string="... %$!msg%"
)
ruleset(name="forward") {
set $!msg = rtrim(ltrim($msg));
action(type="omfwd"
...
)
}
세미콜론(;)으로 끝나는 것을 잊지 마세요! 바라보다변경 가능한 속성 유형