ライセンス | SaaSおよびオンプレミス |
製品 | AssessとProtectの両方、もしくは単体 |
製品カテゴリ | Rubyエージェント |
サブカテゴリ | トラブルシューティング |
本項の内容
Contrastを導入したことで、何らかの問題(Webサーバのプロセスのクラッシュ、特定のページにアクセスできないなど)が発生する場合があります。Contrastが原因で、クラッシュやエラーが発生した場合は弊社サポートまでご連絡頂くと同時に、次の手順に従ってRubyエージェントのログを取得してご提供ください。問題を再現したり、修正をするための重要な情報となります。
ログを出力するための設定手順
Rubyエージェントのログを取得するには、下記のいずれかを設定します。
- contrast_security.yamlファイルを使用する設定:
agent:
service:
logger:
path: /path/to/contrast_service.log
level: DEBUG
host: 127.0.0.1
port: 30555
logger:
path: /path/to/trace_contrast_agent.log
level: DEBUG
- 環境変数を使用する設定:
CONTRAST__AGENT__SERVICE__LOGGER__PATH='/path/to/service_contrast_log'
CONTRAST__AGENT__SERVICE__LOGGER__LEVEL='DEBUG’
CONTRAST__AGENT__SERVICE__HOST='127.0.0.1’
CONTRAST__AGENT__SERVICE__PORT='30555'
CONTRAST__AGENT__LOGGER__PATH='/path/to/trace_contrast_agent.log'
CONTRAST__AGENT__LOGGER__LEVEL='DEBUG
ログ出力を設定したら、Rubyエージェントを組み込んだアプリケーションを起動します。Contrastがデバッグモードになり、指定したログファイルにログが記録されます。
以下のようなDEBUGメッセージがログに出力されていることを確認してください。
標準出力へログを出力する場合
ログファイルに簡単にアクセスできない環境でアプリケーションを実行している場合は、下記のいずれかの方法で、標準出力にログを出力するように設定し、Rubyエージェントを組み込んだアプリケーションを起動します。
- contrast_security.yamlファイルを使用する設定:
agent:
service:
logger:
path: /path/to/contrast_service.log
level: DEBUG
host: 127.0.0.1
port: 30555
logger:
path: /dev/stdout
level: DEBUG
- 環境変数を使用する設定:
CONTRAST__AGENT__LOGGER__PAHT='/dev/stdout'
CONTRAST__AGENT__LOGGER__LEVEL='DEBUG
ヒープダンプを出力する場合
問題の原因を特定するために、ヒープダンプの取得による追加情報が必要になる場合があります。Rubyエージェントを有効にした状態でアプリケーションのヒープダンプを取得するには、以下のいずれかを設定します。
- contrast_security.yamlファイルを使用する設定:
agent:
heap_dump:
enable: true
path: /path/to/contrast_heap_dumps
- 環境変数を使用する設定:
CONTRAST__AGENT__HEAP_DUMP__ENABLE='true'
CONTRAST__AGENT__HEAP_DUMP__PATH='/path/to/contrast_heap_dumps'
ヒープダンプの出力を設定したら、Rubyエージェントが組み込まれているアプリケーションを起動します。バックグランドスレッドが生成され、指定したパスにヒープダンプファイルが出力されます。JSON形式でヒープダンプが出力されていることを確認してください。
注: この処理はパフォーマンスに影響します。ヒープダンプを取得したら、元の設定に戻してください。