Python
Pythonアプリケーションでログを収集するための設定方法を案内します。
エージェントのアップデート
Pythonエージェント1.2.2バージョン以降で可能です。アップデート方法は次の文書を参照してください。
エージェント設定の確認
ホーム画面 > プロジェクト選択 > ログ > ログ設定
-
WhaTapモニタリングサービスの初期画面でプロジェクトを選択した後、ログ > ログ設定 メニューに移動し てください。
-
ログモニタリングを開始する タブの 1. エージェント設定の確認 の案内に従って、エージェント設定を確認してください。
ログ収集の活性化
設定ファイルパス(WHATAP_HOME)を含むコマンドを入力すると、ログ収集がすぐに開始されます。
export LOGFILES={ログファイル全体パス},...
echo "logsink_enabled=true" | sudo tee -a {設定ファイルパス}/whatap.conf
echo "logsink.files=$LOGFILES" | sudo tee -a {設定ファイルパス}/whatap.conf
ログとウェブトランザクションの連動
1.3.6 以降バージョン
1.3.6バージョンから次の方法でトランザクションとログの連動を設定できます。現在、WhaTapはPythonのlogging、loguruライブラリを対応しています。使用するPython Logライブラリに従ってwhatap.confを構成してください。
-
loggingモジュール
logging
echo "trace_logging_enabled=true" | sudo tee -a{設定ファイルパス}/whatap.conf -
loguruモジュール
loguru
echo "trace_loguru_enabled=true" | sudo tee -a{設定ファイルパス}/whatap.conf
1.3.6以前バージョン
トランザクションごとに発生したログを個別に照会できるように、ログにトランザクションID {txid} を出力します。WhaTapモニタリングでは、PythonのLogRecordに {txid} を自動的に注入し、フォーマッタを設定することでログファイルに {txid} を出力できるようにします。
settings.py
...
LOGGING = {
...
'formatters': {
...
},
'handlers': {
...
},
'loggers': {
...
'{ロガー名}': {
'handlers': [...],
...
},
},
}
try:
import whatap.trace.mod.logging as whatap_logging
if whatap_logging.logging_injection_processed:
LOGGING['formatters']['whatap.formatter']={
'()': 'django.utils.log.ServerFormatter',
'format': '[{server_time}] -- {{ "@txid" : "{txid}" }} -- {message}',
'style': '{',
}
LOGGING['handlers']['whatap']={
'level': 'DEBUG',
'class': 'logging.handlers.RotatingFileHandler',
'filename': os.path.join(BASE_DIR, 'logs','whatap_log.log'),
'formatter': 'whatap.formatter',
}
LOGGING['loggers'][{ロガー名}]['handlers'].append('whatap')
except:
pass
...
ログモニタリングの活性化
ホーム画面 > プロジェクト選択 > ログ > ログ設定
ログモニタリングを開始する タブの 2. ログモニタリングの有効化 で、WhaTapのログモニタリングを有効または無効に設定できます。
ログモニタリングの有効化:トグルボタンをオンにするとログモニタリングが有効になり、有効化した日から15日間は無料でお試しいただけます。
ログモニタリングの無効化:トグルボタンをオフにするとログモニタリングが無効になり、以降ログは保存されません。
ログモニタリングの有効化権限
エージェントをインストールした後、プロジェクトに対して編集権限を持つユーザーのみがログモニタリングを有効化できます。 権限の詳細については、次のドキュメントを参照してください。