evtctxgetvar()

イベントコンテキストに保存されたユーザー変数の値を返します。evtctxsetvar() 関数で設定した変数を照会するために使用します。

構文

evtctxgetvar(TOPIC, KEY, VAR_NAME[, HOST])

パラメーター

TOPIC
イベントコンテキストのトピック名。文字列。
KEY
イベントコンテキストのキー値。文字列。
VAR_NAME
照会する変数名。文字列。
HOST
(任意)イベントコンテキストが属するホスト名。省略すると、デフォルトのホストで検索します。

説明

TOPICKEY でイベントコンテキストを識別した後、VAR_NAME に該当する変数の値を返します。

TOPIC または KEYnull の場合は null を返します。指定したイベントコンテキストが存在しない場合は null を返します。VAR_NAMEnull であるか、その名前の変数が存在しない場合は null を返します。

エラーコード

エラーコード説明
invalid-evtctxgetvar-arguments引数の数が3個または4個ではありません。

使用例

  1. web_session トピックでセッションキーに対応するイベントコンテキストの client_ip 変数を照会

    evtctx topic=web_session key=session_id
    | eval ip = evtctxgetvar("web_session", session_id, "client_ip")
    
  2. evtctxsetvar() で変数を設定した後、evtctxgetvar() で照会

    evtctx topic=login_fail key=src_user
    | eval ok = evtctxsetvar("login_fail", src_user, "last_ip", src_ip)
    | eval stored_ip = evtctxgetvar("login_fail", src_user, "last_ip")
    
  3. 存在しない変数を照会する場合

    evtctx topic=login_fail key=src_user
    | eval v = evtctxgetvar("login_fail", src_user, "no_such_var")
    | # v: null
    

互換性

evtctxgetvar() 関数は Sonar 4.0以前のバージョンから提供されています。