• 検索結果がありません。

スクリプト変数

ドキュメント内 1. Kiwi Syslog Daemon Kiwi Syslog Daemon (ページ 56-59)

3  Syslogプロパティの設定

3.3  Rules / Filters / Actions (ルール/フィルター/アクション)

3.3.16  Action - Run Script (アクション – スクリプト実行)

3.3.16.2  スクリプト変数

スクリプト間で受け渡される変数は多種多様です。アクションの Read/Write permissions 設定に従い、変数は変更されSyslog プログラムに返され使用されます。

変数および関数はグローバルにアクセスできる Fields というオブジェクト経由で渡されます。変数および関数にアクセスするに は変数/関数名の前に Fields.を付けます。

共通フィールド Fields.VarFacility

詳細: メッセージのファシリティ値 タイプ: 整数 (0-32767)

範囲: 0 〜 23 ファシリティの一覧については関連項目を参照してください。

Fields.VarLevel

詳細: メッセージのレベル値 タイプ: 整数 (0-32767)

範囲: 0 〜 7 レベルの一覧については関連項目を参照してください。

Fields.VarInputSource 詳細: メッセージの入力元 タイプ: 整数 (0-32767)

範囲: 0 to 2. 0=UDP, 1=TCP, 2=SNMP, 3 = KeepAlive, 4 = NT Event Log, 5 = Log file, 6 = Comm port (4, 5, 6 は未使用)

Fields.VarPeerAddress 詳細:

送信デバイスのIPアドレス(フォーマットは nnn.nnn.nnn.nnn)。メッセージが他のSyslogコレクタから転送されても、この値は 本来の送信元アドレスとなります。

ケース A.

ファイアーウォールデバイス (192.168.1.1) ---> 最初のSyslogコレクタ (192.168.1.2) ---> このSyslogコレクタ (192.168.1.3)

フィールドの値は 192.168.1.1です。

ケース B.

ファイアーウォールデバイス (192.168.1.1) ---> このSyslogコレクタ (192.168.1.3) フィールドの値は 192.168.1.1です。

タイプ: 文字列

フォーマット: nnn.nnn.nnn.nnn ゼロパディングなし 例: 192.168.1.67

Fields.VarPeerName 詳細:

送信デバイスのホスト名。DNSルックアップオプションが有効でルックアップが成功した時に限り解決されたホスト名が入る。そ れ以外は VarPeerAddress と同じの値。フォーマットは nnn.nnn.nnn.nnn。FQDNのホスト名部分のみが入りドメインの接尾 語は含まれない。

タイプ: 文字列 フォーマット: myhost Fields.VarPeerDomain 詳細:

解決されている FQDNのドメイン名部分。ドメインの接尾語のみでが入りホスト名は含まれない。DNSルックアップオプションが 有効でルックアップが成功した時に限り値が入る。それ以外は空白。

タイプ: 文字列

フォーマット: mydomain.com Fields.VarCleanMessageText 詳細:

(ヘッダー削除, DNS ルックアップ, 元のアドレス削除, Cisco 日付削除など)変更後の文字列.

タイプ: 文字列 例:

%SEC-6-IPACCESSLOGP: list 101 denied udp 10.0.0.3 (firewall) (137) -> 216.7.14.105 (webserver.company.com) (137), 1 packet

その他のフィールド Fields.VarDate

詳細: メッセージ受信日付 タイプ: 文字列(10バイト) フォーマット: YYYY-MM-DD 例: 2002-03-17

Fields.VarTime 詳細: メッセージ受信時刻 タイプ: 文字列(8バイト) フォーマット: HH:MM:SS 例: 23:10:04

Fields.VarMilliSeconds

詳細: 1/1000秒単位のメッセージ受信時刻 タイプ: 文字列 (3バイト)

範囲: 000 〜 999

フォーマット: nnn (3バイト, ゼロパディング) Fields.VarSocketPeerAddress

詳細: メッセージ送信デバイスまたは最も近いコレクタのIPアドレス ケース A.

ファイアーウォールデバイス (192.168.1.1) ---> 最初のSyslogコレクタ (192.168.1.2) ---> このsyslogコレクタ (192.168.1.3)

値は 192.168.1.2.

ケース B.

ファイアーウォールデバイス (192.168.1.1) ---> このsyslog コレクタ (192.168.1.3) 値は 192.168.1.3.

タイプ: 文字列

フォーマット: nnn.nnn.nnn.nnn.ゼロパディングなし 例: 192.168.1.67

Fields.VarPeerAddressHex 詳細:

メッセージを送信したIPアドレスを8桁16進数に変換。

16進アドレスはIPマスクとIPレンジフィルターに使用。VarPeerIPAddress を変更しIPマスクやIPレンジフィルターを使うには VarPeerAddressHex フィールドも変更します。

タイプ: 文字列 (8バイト ) 範囲: 00000000 から FFFFFFFF

例: C0A80102 (192.168.1.2 を2バイト16進数に変換。ゼロパディング) Fields.VarPeerPort

詳細: メッセージを送信した UDP/TCP ポート タイプ: 整数 (0-65535)

範囲: 0 から 65535

通常使用する値: 1023以上の値

Fields.VarLocalAddress

詳細: このマシンにメッセージを送信したIPアドレス タイプ: 文字列

例: 127.0.0.1, 192.168.1.2 Fields.VarLocalPort

詳細: メッセージを受信したローカルマシンのUDP/TCP ポート タイプ: 整数 (0-65535)

範囲: 0 から 65535

通常使用する値: UDP では514, TCPでは1468, SNMPでは162 Fields.VarPriority

詳細: メッセージプライオリティ値 タイプ: 整数 (0-32767) 範囲: 0 から191

Fields.VarRawMessageText 詳細:

変更前の受信メッセージ ( <pri> タグ, 元のアドレスなどを含む)。

このフィールドは読み取り専用です。スクリプトのフィールドを変更しても対応するプログラム変数は変更されません。

カスタムフィールド

これらのフィールドは動的に変更され、新しいメッセージを受信するたびにクリアされます。これらのフィールドにはスクリプト の結果が入るため Log to file や Log to Database アクションに使われます。このフィールドの値は %VarCustom01 Insert message content or counter オプションか AutoSplit 文を使ってアクションにパラメータとして渡すこともできます。メッ セージをスクリプトでいくつかのフィールドに分割し、ファイルやデータベースの対応するフィールドに記録するのに適していま す。

カスタムフィールドは16個あります。1 〜 9 まではゼロパディングされます(VarCustom1ではなくVarCustom01となります)。

Fields.VarCustom01 から Fields.VarCustom16

スクリプト間フィールド

固定されておりメッセージを受信しても変化しません。他のスクリプトへの値の受け渡し、同一スクリプトで後に利用するために 値を維持するためのものです。%VarGlobal01 Insert message content or counter オプションか AutoSplit 文を使って値を パラメータとしてアクションに渡すこともできます。

グローバルフィールドは16個あります。1 〜 9 まではゼロパディングされます(VarCustom1ではなくVarCustom01となりま す)。

Fields.VarGlobal01 から Fields.VarGlobal16

カスタムスクリプトフィールド

固定されておりメッセージを受信しても変化しません。自身のカスタム統計とカウンター用に使われます。%VarStats01 Insert message content or counter オプションを使って値をパラメータとしてアクションに渡すこともできます。

Syslog Statistics ウィンドウの Counters タブで現在のフィールド値を見ることができます。カスタム統計は日別統計Eメール にも記載されています。

統計フィールドの名前と初期値は Scripting オプションから設定します。

カスタム統計フィールドは16個あります。1 〜 9 まではゼロパディングされます(VarStats1ではなくVarStats01となります)。

Fields.VarStats01 から Fields.VarStats16

コントロールとタイミングフィールド Fields.ActionQuit

詳細:

スクリプト実行後に何をするかを設定します。0 はルールの次のアクションを続けます。1 〜 99はルール内でスキップするアク ション数です(1=次の1アクションをスキップ、3=次の3アクションをスキップ)。100 は次のルールへのジャンプです。1000 は すべてのルールをスキップしメッセージ処理を終了します。値が指定されていないときは 0 とみなされます。

タイプ: 整数 (0-32767) 範囲: 0 から 1000

指示: 0=スキップしない, 1-99=スキップするアクション数, 100=次のルールまでスキップ, 1000=メッセージ処理終了 Fields.SecondsSinceMidnight

詳細: 深夜0時からの経過時間(秒)

タイプ: ロング (0-20億) 範囲: 0 〜 86400

Fields.SecondsSinceStartup

詳細: プログラム起動からの経過時間(秒)

タイプ: ロング (0-20億)

ドキュメント内 1. Kiwi Syslog Daemon Kiwi Syslog Daemon (ページ 56-59)