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
ありがとう!
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 page はログオプションを提供します:
-Ls FACILITY
指定された機能を使用して、syslog経由でメッセージをログに記録します(LOG_DAEMONの場合は「d」、LOG_USERの場合は「u」、LOG_LOCAL0からLOG_LOCAL7の場合は「0」-「7」)。これらの各オプションには「大文字」バージョンもあり、対応するロギングメカニズムをメッセージの特定の優先順位に制限できます。
-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と-LSed
/-LS3d
。
(オプションを正しい順序に編集しました。)
最小優先順位をLOG_WARNINGに設定するには(通常、これを使用します)、argoptを変更します。
-LSD
に
-LSwd
これは以下を意味します:
man で述べたように(しかし、実際には明確な例がない):
-LFおよび-LSの場合、優先順位の指定はファイルまたはファシリティトークンの前にあります
dontLogTCPWrappersConnects
SnmpdがTCP Wrapperサポートでコンパイルされた場合、エージェントへのすべての接続がログに記録されます。この設定により、受け入れられた接続のログメッセージが無効になります。拒否された接続は引き続きログに記録されます。
つまり追加 dontLogTCPWrappersConnects true
をsnmpd.confに追加します。
監視サービス(およびUDPをサポートするサービス)の場合、このログメッセージがLOG_DEBUGを超えると見なされる理由に困惑します:-(。journalctl -o verbose
は、メッセージにPRIORITY = 6(INFO)があることを示します。これは、snmpdの通常の起動メッセージと同じです。
CentOS/Redhatインストールの/etc/sysconfig/snmpd.options
ファイルから "-Lsd"ディレクティブを完全に削除して、次のようなファイルを残しています。
# snmpd command line options
OPTIONS="-Lf /dev/null -p /var/run/snmpd.pid -a"
標準(CentOS 6.5のデフォルトの/etc/snmp/snmp.conf
ファイルに含まれています)の行を含めると、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