Syslog Ng는 "local/" 또는 "slot1/"로 추가된 호스트 이름으로 인해 f5 로그를 디렉터리로 감지합니다.

Syslog Ng는 "local/" 또는 "slot1/"로 추가된 호스트 이름으로 인해 f5 로그를 디렉터리로 감지합니다.

우리는 syslog-ng에 로그를 보내는 여러 개의 f5 장치가 있는 시스템을 가지고 있습니다. syslog-ng를 다음과 같이 구성합니다.

/path/to/directory/$HOST. 

/local이 호스트 이름 필드에 있으므로 다음으로 보내려고 하기 때문에 문제가 발생합니다.

/path/to/directory/local/ or /path/to/directory/slot1/. 

디렉토리를 생성하고 싶지 않기 때문에 오류는 다음과 같습니다.

Directory does not exist. 

syslog-ng 재작성 규칙을 사용하여 호스트 이름의 /local 및 /slot1을 local- 및 Slot-으로 바꾸려고 시도했지만 작동하지 않는 것 같습니다.

다시 쓰기 규칙은 다음과 같습니다.

    rewrite r_f5{
        subst("slot1/", "slot1-", value("HOST"), flags("global"), flags("ignore-case"));
        subst("slot1/", "slot1-", value("MESSAGE"), flags("global"), flags("ignore-case"));     
        subst("local/", "local-", value("HOST"), flags("global"), flags("ignore-case"));
        subst("local/", "local-", value("MESSAGE"), flags("global"), flags("ignore-case"));
};

메시지 규칙은 호스트 규칙이 작동하지 않아 발생합니다.

로깅 규칙은 다음과 같습니다.

log { source(s_network_f5); rewrite(r_f5); destination(d_network_f5);};

다시 쓰기 규칙에 문제가 있나요?

관련 정보