와일드카드를 통해 전달된 많은 파일에 멀티테일 필터링 적용

와일드카드를 통해 전달된 많은 파일에 멀티테일 필터링 적용

multitail맨페이지와 온라인 매뉴얼에 설명된 멋진 정규식 기반 필터링 메커니즘이 있습니다. 두 소스 모두 특정 정규식과 일치하는 로그 행을 -ev스위치를 사용하여 출력에서 ​​제외할 수 있다고 명시합니다.

multitail -ev "ignorelinescontainingthis" /var/log/whatever.log -ev "alsoignorethis" /var/log/another.log

그러나 이는 와일드카드를 사용하여 전달되는 많은 로그 파일을 필터링하는 데는 작동하지 않는 것 같습니다.

multitail -ev "thisdoesntwork" /var/log/myservice*.log

이것을 작동시킬 수 있는 방법이 있나요?

분석을 위해 -ec스위치(정규식 일치를 강조 표시)를 시도했는데 필터는 와일드카드 목록의 첫 번째 파일에만 적용되고 다른 파일에는 적용되지 않는 것으로 나타났습니다.

답변1

내 의견을 답변으로 전환합니다.

매뉴얼 페이지multitail-e옵션을 다음과 같이 정의합니다 .

-e 다음에 대해 다음 정규식을 사용하십시오.파일.

따라서 정규식 필터는 바로 다음 파일에만 적용됩니다. 쉘 글로브를 사용할 때 필터는 확장된 파일 목록의 첫 번째 파일에만 적용됩니다.

모든 파일에 정규식 필터를 적용하려면 다음 -E옵션을 대신 사용해야 합니다.

-E 다음에 대해 다음 정규식을 사용하십시오.파일.

-v지정된 정규식을 부정하는 옵션은 이러한 옵션 중 하나에 대해 동일한 방식으로 작동해야 합니다 .

관련 정보