前のトピック: 拡張スクリプト

次のトピック: 管理ソフトウェアでの拡張変数の使用


サンプル スクリプトのテスト

拡張スクリプトを作成したら、コマンド ラインでテストします。 以下の例では、UNIX システム上で OctetString 拡張を作成し、その出力をテストし、次に SNMP を使用してスクリプトから値を返します。

スクリプトをテストする方法

  1. 以下の情報を含む、/opt/CA/SystemEDGE/debugext.sh という名前の実行可能ファイルを作成します。
    #!/bin/sh
    Script=$0
    LeafNumber=$1
    Operation=$2
    SetValue=$3
    	
    if [ "$Operation" = "SET" ]; then
    echo $Script     > /tmp/debugext_set.txt 
    echo `date`      >> /tmp/debugext_set.txt
    echo $LeafNumber >> /tmp/debugext_set.txt
    echo $Operation  >> /tmp/debugext_set.txt
    echo $SetValue   >> /tmp/debugext_set.txt
    echo $SetValue   >  /tmp/debugext_setvalue.txt #SET VALUE HERE
    echo $SetValue   #You must echo back what was set
    fi
    	
    # Override GETNEXT and just do GET
    if [ "$Operation" = "GETNEXT" ];  then
    Operation="GET"
    fi
    	
    if [ "$Operation" = "GET" ]; then
    echo $Script     > /tmp/debugext_get.txt
    echo `date`      >> /tmp/debugext_get.txt
    echo $LeafNumber >> /tmp/debugext_get.txt
    echo $Operation  >> /tmp/debugext_get.txt
    if [ ! -f /tmp/debugext_setvalue.txt ]; then
    echo "ERROR: do set first... Script:$Script 
    LeafNumber:$LeafNumber Operation:$Operation"
    exit 0
    fi
    cat /tmp/debugext_setvalue.txt  #return SET VALUE
    fi
    

    注:この例では、OctetString である拡張スクリプトをテストします。 UNIX オペレーティング システムで有効です。 Windows システムでは、アクション スクリプト コマンドでインタープリタをコールする必要があります。 たとえば、「perl.exe myscript.pl」と入力します。

  2. sysedge.cf に以下の行を追加します。
    extension 1 OctetString ReadWrite /opt/CA/SystemEDGE/debugext.sh
    

    注:この例では、OctetString である拡張スクリプトをテストします。 UNIX オペレーティング システムで有効です。 Windows システムでは、アクション スクリプト コマンドでインタープリタをコールする必要があります。 たとえば、「perl.exe myscript.pl」と入力します。

  3. コマンド ラインで以下の内容を入力して、myset.txt という名前のファイルを作成します。
    echo "1.3.6.1.4.1.546.14.1.0 04 debugSetString" > myset.txt
    

    これで、myset.txt という名前のファイルが作成されます。 OctetString (04) "debugSetString" を OID 1.3.6.1.4.1.546.14.1.0 に設定します。

  4. 以下の内容を入力して、SNMP Set を発行します。
    ./snmpset -c private -h 127.0.0.1 < myset.txt
    
  5. 以下の内容を入力して、debugSetString の値を取得します。
    ./snmpget -c public -h 127.0.0.1 -o 1.3.6.1.4.1.546.14.1.0
    
  6. コマンド ラインで以下の内容を入力することで、セットアップをテストします。
    ./debugext.sh 1 SET debugSetString2
    

    このコマンドは、出力として設定されている値を返します。

    ./debugext.sh 1 GET
    

    このコマンドは、以前の SET コールで設定された値を返します。