QRadar Python ヘルパー・ライブラリー関数

QRadar® Python ヘルパー・ライブラリー (qpylib) には、ロギングを追加し、REST API 呼び出しを行い、JSON オブジェクトを Python ディクショナリーに変換するために使用できるいくつかの役立つ関数が含まれています。

アプリケーションの views.py ファイルにインポートするすべての関数は、グローバルに呼び出すことができます。

以下の表では、アプリケーションの views.py ファイルにインポートできる関数について説明します。

表 1. アプリケーション内にインポートできる関数
関数 フォーマット 説明
log()
def log(message, level='info'):

以下に例を示します。

from qpylib import qpylib

..

#in precedence order from lowest level to highest

log('debug message' ,'debug')

log('info message' ,'info')

log('warning message' ,'warning')

log('error message' ,'error')

log('critical message' ,'critical')
qpylib ヘルパー・ライブラリーをアプリケーションの views.py にインポートして、log () 関数を使用します。この関数は、選択したログ・レベルのメッセージを /store/log/app.log ファイルに書き込みます。

デフォルトでは、ロギングはオンになっていて、INFO レベルに設定されます。 これより低いレベルのロギング・メッセージは無視されます。 変更するには、POST /log_level エンドポイントを使用します。

set_log_level( log_level )
def set_log_level(log_level='info'):
現在のログ・レベルを設定します。 POST /log_level エンドポイントによって使用されますが、プログラマチックに呼び出すこともできます。
REST()
def REST( RESTtype, requestURL, headers={}, 
data=None, params=None, json=None, version=None ):

以下に例を示します。

try:
  headers = {'content-type' : 'text/plain'}
  arielOptions = qpylib.REST( 'get',
                 '/api/ariel/databases', headers = headers )
except Exception as e:
  qpylib.log( "Error "  + str(e) )
  raise
この関数を使用してQRadar REST API エンドポイントへの呼び出しを行うには、 qpylib ライブラリーをインポートします。 エンドポイントは、QRadar から要求で渡されるセキュリティー・トークンを再使用して、認証および許可を処理します。
to_json_dict( JSON )
def to_json_dict(python_obj):
JSON オブジェクトを Python ディクショナリーに変換します。