SNMPdロギングの冗長性を削減


37

CentOSシステムのSNMPdは、監視ツールからクエリを受信するたびにsyslogにログメッセージを送信しています。SNMPdの詳細度を下げる方法はありますか?ログに多くの混乱を追加します。

Sep 12 13:05:40 myhost snmpd[7073]: Received SNMP packet(s) from UDP: [ipaddr]:42874
Sep 12 13:05:40 myhost snmpd[7073]: Connection from UDP: [ipaddr]:49272

ありがとう!

回答:


37

ロギングオプションについては、開始するコマンドsnmpd(おそらくどこか/etc/rc.d/-Ubuntuの場合/etc/defaults/snmpd)を確認してください。

SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid -g root 0.0.0.0'

または、ps aux | grep snmpd出力で見つけます。

manページには、ログオプションを提供します:

-施設

指定された機能(LOG_DAEMONの場合は「d」、LOG_USERの場合は「u」、LOG_LOCAL0からLOG_LOCAL7の場合は「0」-「7」)を使用して、syslog経由でメッセージを記録します。これらの各オプションの「大文字」バージョンもあり、対応するログメカニズムをメッセージの特定の優先度に制限できます。

-LFおよび-LSの場合、優先順位の指定はファイルまたはファシリティトークンの前になります。認識される優先順位は次のとおりです。

0 or ! for LOG_EMERG,
1 or a for LOG_ALERT,
2 or c for LOG_CRIT,
3 or e for LOG_ERR,
4 or w for LOG_WARNING,
5 or n for LOG_NOTICE,
6 or i for LOG_INFO, and
7 or d for LOG_DEBUG. 

デフォルトはかなり冗長です(デバッグの2レベル下のみ):

通常の出力は、優先レベルLOG_NOTICEで記録されます(または記録されます!)。

LOG_DAEMON(-Lsd)を介してsyslogにログを記録している場合は、たとえばLOG_WARNING with -LSwd/ -LS4d、またはLOG_ERR with -LSed/に減らすことができます-LS3d

(オプションを正しい順序にするために編集されました。)


CentOS 6.5で正しい場所を見つけるのに苦労しました。それ/etc/snmp/snmpd.optionsもそうではありませ んが/etc/sysconfig/snmpd.options、実際はそうです/etc/sysconfig/snmpdps aux | grep snmpd変更が機能しているかどうかを確認するのに非常に役立ちました。
ユージンファンデルメルウェ

1
systemdを使用するDebianでは/lib/systemd/system/snmpd.service、に接続されてsystemctl cat snmpdおりsystemctl edit snmpdオーバーライド [Service]ExecStartのみに使用されますExecStart2回入力する必要があります。最初は古いものをクリアするために空にしますシステム化されたオーバーライドベンダー設定機能を探してください)
Alex

19

最小優先度をLOG_WARNINGに設定するには(これが通常使用されます)、単にargoptを変更します。

-LSD

-LSwd

次の略です:

  • S:syslog、優先順位が次に来る
  • w:(または4)警告とより関連性の高いメッセージのみを記録します
  • d:LOG_DAEMON機能を使用します

男に述べられているように(しかし、実際には明確な例を欠いています):

-LFおよび-LSの場合、優先度の指定はファイルまたはファシリティトークンの前になります


おっと、優先順位/施設の順序がわかりませんでした。
アンドリュー

10

dontLogTCPWrappersConnects

snmpdがTCP Wrapperサポートを使用してコンパイルされた場合、エージェントへのすべての接続がログに記録されます。この設定は、受け入れられた接続のログメッセージを無効にします。拒否された接続は引き続きログに記録されます。

dontLogTCPWrappersConnects trueつまり、snmpd.confに追加します。

私は、このログメッセージはLOG_DEBUGを超えると考えられている理由を監視サービスのために、困惑(およびUDPをサポートしています1)よ:-(。 journalctl -o verboseショーのメッセージがありPRIORITY snmpdのための通常の起動メッセージと同じである= 6(INFO)、 。


ロギングレベルを通知から警告に変更するだけでなく、接続ロギングに重点を置いた方法で動作しているように見えます。
-jla

これは、ログの条件を絞り込むのではなく、成功した接続試行のログを削除するのに最適でした。
Bナイト

5

/etc/sysconfig/snmpd.optionsCentOS / Redhatインストールのファイルから「-Lsd」ディレクティブを完全に削除し、次のようなファイルを残します。

# snmpd command line options
OPTIONS="-Lf /dev/null -p /var/run/snmpd.pid -a"

これはすべてのsnmpdログを完全に停止しますか、それともデフォルトのロギングにフォールバックしますか?
バンジャー

3

標準(/etc/snmp/snmp.confCentOS 6.5のデフォルトファイルに含まれる)行を含めることで、TCP / UDP SNMP接続ログに関する冗長性を減らすために機能しました。

dontLogTCPWrappersConnects yes

デフォルトsnmp.confファイルからのより「詳細な」抜粋を次に示します。

# We do not want annoying "Connection from UDP: " messages in syslog.
# If the following option is commented out, snmpd will print each incoming
# connection, which can be useful for debugging.

dontLogTCPWrappersConnects yes

-1

raspberry pi / raspbianでは、ファイルの場所は

/lib/systemd/system/snmpd.service

snmpdサービスを再起動する前に、デーモンのリロードを行う必要があります。

systemctl daemon-reload

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.