すべてのプロダクト
Search
ドキュメントセンター

Simple Log Service:サーバーからSNMPデータを収集する

最終更新日:Aug 21, 2024

このトピックでは、Logtailのinput_snmpプラグインを使用して、サーバーからSimple Network Management Protocol (SNMP) データを収集する方法について説明します。

前提条件

サーバーはLogtailのインストールに使用できます。 サーバーは次の要件を満たす必要があります。

  • SNMPエージェントはサーバー上で実行されます。

  • snmpgetで必要なポートがサーバーで有効になっています。

  • サーバーはsnmptranslateおよびsnmptableコマンドをサポートしています。

手順

  1. にログインします。Simple Log Serviceコンソール.

  2. [データのインポート] セクションで、[カスタムデータプラグイン] を選択します。

  3. プロジェクトとLogstoreを選択します。 [次へ] をクリックします。

  4. マシングループを作成します。

    • マシングループが利用可能な場合は、[既存のマシングループを使用] をクリックします。

    • 使用可能なマシングループがない場合は、次の手順を実行してマシングループを作成します。 この例では、Elastic Compute Service (ECS) インスタンスが使用されています。

      1. [ECSインスタンス] タブで、[手動でインスタンスを選択] を選択します。 次に、使用するECSインスタンスを選択し、[作成] をクリックします。

        詳細については、「ECSインスタンスへのLogtailのインストール」をご参照ください。

        重要

        サーバーが別のAlibaba Cloudアカウントに属するECSインスタンス、サードパーティのクラウドサービスプロバイダーによって提供されているサーバー、またはデータセンターにデプロイされているサーバーの場合、サーバーにLogtailを手動でインストールする必要があります。 詳細については、「LinuxサーバーにLogtailをインストールする」または「WindowsサーバーにLogtailをインストールする」をご参照ください。 Logtailを手動でインストールした後、サーバーのユーザー識別子を設定する必要があります。 詳細については、「ユーザー識別子の設定」をご参照ください。

      2. Logtailをインストールしたら、[インストールの完了] をクリックします。

      3. [マシングループの作成] ステップで、[名前] パラメーターを設定し、[次へ] をクリックします。

        Simple Log Serviceでは、IPアドレスベースのマシングループとカスタム識別子ベースのマシングループを作成できます。 詳細については、「IPアドレスベースのマシングループの作成」および「カスタム識別子ベースのマシングループの作成」をご参照ください。

  5. [ソースサーバーグループ] セクションからマシングループを選択し、マシングループを [応用サーバーグループ] セクションに移動します。 次に、[次へ] をクリックします。

    重要

    マシングループを作成した直後にマシングループを適用すると、マシングループのハートビートステータスがFAILになる可能性があります。 この問題は、マシングループがSimple Log Serviceに接続されていないために発生します。 この問題を解決するには、[自動再試行] をクリックします。 問題が解決しない場合は、Logtailマシングループに関連するエラーのトラブルシューティングを行うにはどうすればよいですか。

  6. [データソースの指定] ステップで、[設定名] および [プラグイン設定] パラメーターを設定し、[次へ] をクリックします。

    • inputは、データソースの収集設定を指定します。 This parameter is required.

    • processorsは、データの解析に使用される処理設定を指定します。 このパラメーターはオプションです。 1つ以上の処理方法を指定できます。

      現在の入力設定がログ解析要件を満たしていない場合は、[プラグイン設定] フィールドでプロセッサ設定を追加できます。 たとえば、項目の抽出、ログ時間の抽出、データのマスク、ログのフィルタリングにプラグインを追加できます。 詳細については、「Logtailプラグインを使用したデータ処理」をご参照ください。

    "inputs":[
            {
                "type":"service_snmp",
                "detail":{
                "Targets": ["127.0.0.1"],
                "Port": "161",
                "Community": "public",
                "Timeout": 5,
                "Version":2,
                "Transport":"udp",
                "MaxRepetitions":0,
                "Oids":[
                "1.3.6.1.2.1.1.3.0"
                ]
            }
        }
    ],

    パラメーター

    データ型

    必須

    説明

    ターゲット

    文字列リスト

    課金されます

    マシングループのIPアドレス。

    ポート

    String

    課金されません

    SNMPプロトコルで使用されるポート。 デフォルト値: 161

    コミュニティ

    String

    課金されません

    コミュニティの名前。 デフォルト値: public

    SNMPv1とSNMPv2は、認証にコミュニティ名を使用します。

    ユーザー名

    String

    課金されません

    ユーザー名 このパラメーターはデフォルトで空となります。

    SNMPv3は認証にユーザー名を使用します。

    AuthenticationProtocol

    String

    課金されません

    認証プロトコル。 デフォルト値: NoAuth

    SNMPv3は、認証に認証プロトコルを使用します。

    AuthenticationPassphrase

    String

    課金されません

    認証プロトコルのパスワード。 このパラメーターはデフォルトで空となります。

    AuthenticationProtocolパラメーターをMD5またはSHAに設定した場合、AuthenticationPassphraseパラメーターを設定する必要があります。

    PrivacyProtocol

    String

    課金されません

    プライバシープロトコル。 デフォルト値: NoPriv

    SNMPv3は、認証にプライバシープロトコルを使用します。

    PrivacyPassphrase

    String

    課金されません

    プライバシープロトコルのパスワード。 デフォルトでは、パスワードは认证パスワードと同じです。

    PrivacyProtocolパラメーターをDESまたはAESに設定した場合、PrivacyPassphraseパラメーターを設定する必要があります。

    タイムアウト

    int

    課金されません

    クエリ操作のタイムアウト期間。 単位は秒です。 デフォルト値: 5

    バージョン

    int

    課金されません

    SNMPプロトコルのバージョン。 デフォルト値: 2

    有効な値: 123

    輸送

    String

    課金されません

    SNMP通信に使用されるトランスポートプロトコル。 デフォルト値: udp

    有効な値: udpおよびtcp

    MaxRepetitions

    int

    課金されません

    クエリがタイムアウトした後の再試行の回数。 デフォルト値:0

    Oids

    文字列リスト

    課金されません

    サーバーで照会されるオブジェクト識別子。 このパラメーターはデフォルトで空となります。

    フィールド

    文字列リスト

    課金されません

    サーバーで照会されるフィールド。 このパラメーターはデフォルトで空となります。

    プラグインは、ローカル管理情報ベースを検索し、フィールドをオブジェクト識別子に変換し、オブジェクト識別子を照会する。

    テーブル

    文字列リスト

    課金されません

    サーバーで照会されるテーブル。 このパラメーターはデフォルトで空となります。

    プラグインは、テーブル内のすべてのフィールドを照会し、ローカル管理情報ベースをルックアップし、フィールドをオブジェクト識別子に変換し、次にオブジェクト識別子を照会する。

  7. データをプレビューし、インデックスを設定し、[次へ] をクリックします。

    デフォルトでは、Simple Log Serviceでフルテキストインデックスが有効になっています。 収集したログに基づいて、手動モードまたは自動モードでフィールドインデックスを設定できます。 自動モードでフィールドインデックスを設定するには、[自動インデックス生成] をクリックします。 Simple Log Serviceは自動的にフィールドインデックスを作成します。 詳細については、「インデックスの作成」をご参照ください。

設定例

例 1

  • Logtailプラグイン設定のサンプル

    この例では、SNMPv2プロトコルが使用され、コミュニティ名はpublicです。

    "inputs":[
            {
                "type":"service_snmp",
                "detail":{
                "Targets": ["127.0.0.1"],
                "Port": "161",
                "Community": "public",
                "Timeout": 5,
                "Version":2,
                "Transport":"udp",
                "MaxRepetitions":0,
                "Oids":[
                "1.3.6.1.2.1.1.3.0",
                "1.3.6.1.2.1.1.4.0",
                "1.3.6.1.2.1.1.7.0",
                "1.3.6.1.2.1.1.1.0"
                ]
            }
        }
    ],
  • 収集結果

    {"_target_":"127.0.0.1","_field_":"DISMAN-EXPRESSION-MIB::sysUpTimeInstance","_oid_":".1.3.6.1.2.1.1.3.0","_conversion_":"","_type_":"TimeTicks","_content_":"10522102","_targetindex_":"0"}
    {"_target_":"127.0.0.1","_field_":"SNMPv2-MIB::sysContact.0","_oid_":".1.3.6.1.2.1.1.4.0","_conversion_":"","_type_":"OctetString","_content_":"Me <me@example.org>","_targetindex_":"0"}
    {"_conversion_":"","_type_":"Integer","_content_":"72","_targetindex_":"0","_target_":"127.0.0.1","_field_":"SNMPv2-MIB::sysServices.0","_oid_":".1.3.6.1.2.1.1.7.0"}
    {"_targetindex_":"0","_target_":"127.0.0.1","_field_":"SNMPv2-MIB::sysDescr.0","_oid_":".1.3.6.1.2.1.1.1.0","_conversion_":"","_type_":"OctetString","_content_":"Linux 4be69bf59c36 5.10.25-linuxkit #1 SMP Tue Mar 23 09:27:39 UTC 2021 x86_64"}

例 2

  • Logtailプラグイン設定のサンプル

    この例では、SNMPv3プロトコルが使用されます。 照会されたマシングループに含まれるサーバーは1つだけです。 ユーザー名はsnmpreadonly、認証プロトコルはSHA、認証プロトコルのパスワードはSecUREDpass、プライバシープロトコルはAES、プライバシープロトコルのパスワードはStRongPASSです。

    "inputs":[
        {
            "type":"service_snmp" 、
            "detail":{
            "ターゲット":["127.0.0.1"] 、
            "ポート": "161" 、
            "コミュニティ": "パブリック" 、
            "Timeout": 5,
            "バージョン":3、
            "UserName":"snmpreadonly" 、
            "AuthenticationProtocol":"SHA" 、
            "AuthenticationPassphrase":"SecUREDpass" 、
            "PrivacyProtocol":"AES" 、
            "PrivacyPassphrase":"StRongPASS" 、
            "Oids":[
            "1.3.6.1.2.1.1.3.0" 、
            "1.3.6.1.2.1.1.1.0"
            ],
            "フィールド":[
            "SNMPv2-MIB::sysContact.0" 、
            "SNMPv2-MIB::sysServices.0"
            ],
            "トランスポート":"udp"
            }
        }
    ],
  • 収集結果

    {"_target_":"127.0.0.1" 、"_field_":"DISMAN-EXPRESSION-MIB::sysUpTimeInstance" 、"_oid_":". 1.3.6.1.2.1.3.0" 、"_conversion_":"" "_type_":"TimeTicks" 、"_content_":"10423593" 、"_targetindex_":"0"}
    {"_type_":"OctetString" 、"_content_":"Linux 4be69bf59c36 5.10.25-linuxkit #1 SMP 3月23日火曜日09:27,39 UTC 2021 x86_64" 、"_targetindex_":"0" 、"_target_" ":". 1._ "2.6.0" 、"1._ sy.1.0、" "_conversion_":""}
    {"_content_":"Me <me@example.org>" 、"_targetindex_":"0" 、"_target_":"127.0.0.1" 、"_field_":"SNMPv2-MIB::sysContact.0" 、"_oid_":". 3.6.1.1.1.1.4.0" 、"_conversion_":"" "、"_type_":" String "}
    {"_conversion_":"","_type_":"Integer","_content_":"72","_targetindex_":"0","_target_":"127.0.0.1","_field_":"SNMPv2-MIB: sysServices.0","_oid":".1.3.6.1.2.1.1.7.0"} 

フィールド

サーバからSNMPデータを収集した後のログのフィールドを次の表に示します。

項目

説明

_target_

サーバーの IP アドレス。

_targetindex_

プラグイン構成で指定されているマシングループ内のサーバーのインデックス。

この例では、IPアドレスが127.0.0.1のサーバーを1つだけ使用します。 この場合、このフィールドの値は0である。

_フィールド_

照会されたフィールドがローカル管理情報ベースに基づいて変換されるオブジェクト識別子。

_oid_

照会されたオブジェクト識別子。

_conversion_

収集結果の変換タイプ。

  • ipaddr: IPアドレスが変換されます。

  • hwaddr: デバイスアドレスが変換されます。

  • 空の値: 変換が発生していません。

_type_

コレクション結果のタイプ。

_content_

収集されたコンテンツ。