커널 오류를 끄거나 Prometheus 노드 내보내기를 구성하여 방지하세요.

커널 오류를 끄거나 Prometheus 노드 내보내기를 구성하여 방지하세요.

/var/log/syslog먼저 합계에서 볼 수 있는 출력을 제공하겠습니다 dmesg.

[559151.898586] ACPI Error: SMBus/IPMI/GenericSerialBus write requires Buffer of length 66, found length 32 (20170831/exfield-427)
[559151.911578] No Local Variables are initialized for Method [_PMM]
[559151.911580] No Arguments are initialized for method [_PMM]
[559151.911584] ACPI Error: Method parse/execution failed \_SB.PMI0._PMM, AE_AML_BUFFER_LIMIT (20170831/psparse-550)
[559151.916648] ACPI Exception: AE_AML_BUFFER_LIMIT, Evaluating _PMM (20170831/power_meter-338)

확실히프로메테우스 노드 내보내기방아쇠그래도 오류이유는 아닌 것 같다기록된 오류의 경우.

이제 제가 달성하고 싶은 것은 - 바람직하게는 - Prometheus 노드 내보내기에 쿼리하려는 정보가 무엇이든 쿼리를 중지하도록 지시하는 것입니다. 실패하면 내 로그 파일이 스팸 메일이 되지 않도록 이 메시지를 무음으로 설정하고 싶습니다.

이 두 가지 옵션 중에서 어떻게 선택해야 합니까? ...아니면 제가 고려하지 않은 다른 옵션이 있을 수도 있습니다...

이는 Ubuntu 18.04의 패키지 버전에서 발생합니다 ( - yes, Ubuntu를 통해 설치할 수 있는 prometheus-node-exporter0.16 및 0.17 버전에서도 발생함 ).prometheus-node-exporterstretch-backports

답변1

acpi_power_meter분명히 가장 좋은 방법은 /etc/modprobe.d/blacklist.conf다음과 같은 줄을 추가하여 지정된 커널 모듈(또는 동일한 폴더에 새로 생성된 파일)을 블랙리스트에 추가하는 것입니다.

blacklist acpi_power_meter

실행 중인 시스템에서는 rmmod acpi_power_meter모듈을 제거하려면 수퍼유저로 실행해야 합니다. 테스트해 본 결과 제가 담당하는 모든 HP 서버에서 완벽하게 작동했습니다. 이 오류는 문제의 HP 하드웨어의 BIOS 결함으로 인해 발생한다고 합니다.

이것이 유일한 가능한 방법인 것 같습니다. 다음을 통해 찾았습니다.이 댓글프로메테우스 node_exporter프로젝트에 대해.

답변2

[_PMM]이러한 유형의 로그 메시지를 새 컨테이너에 넣습니다 openvz(그래서 이러한 메시지는 제가 제어할 수 없습니다).

함께 rsyslog만들 수 있습니다.속성 필터 in /etc/rsyslog.d/discard.conf(이 디렉토리의 파일은 다른 모든 구성이 적용되기 전에 획득됩니다):

:msg, contains, "[_PMM]"    ~

필터가 없는 경우 syslog(예: inetutils-syslogd) - 간단한 수정 방법은 필터를 생성 /etc/cron.hourly/pmmlog하고 실행 가능하게 만드는 것입니다.

#!/bin/sh

# remove annoying logs
# Nov 29 12:55:29 vzbackup vmunix: [161167.516267] No Arguments are initialized for method [_PMM]
# Nov 29 12:56:29 vzbackup vmunix: [161227.527169] No Local Variables are initialized for Method [_PMM]

sed -i '/.*[_PMM]/d' /var/log/messages

관련 정보