Skip to main content

サービスの実行

アプリケーションの起動時に、Rubyエージェントは別のプロセスとしてサービスを開始します。このプロセスは、エージェントからのメッセージを集約して、Contrastに攻撃の情報を送信し、Contrastから設定の更新情報を受信します。

エージェントは、64ビットMacおよびLinuxサービスでパッケージ化されています。サービスはエージェントのプロセスによって起動されるため、サービスにはエージェントと同じ設定ファイルへのアクセスがあります。サービスプロセスが停止した場合は、エージェントは再起動を試みます。

万が一、再起動プロセスに失敗した場合は、エージェントは5回試行後にサービス再起動を中止し、Contrastへ検出結果を送信しなくなります。ただし、エージェントは最後に受信した設定を使用して、アプリケーションの保護を継続します。

rakeタスクを使用してサービスステータスにアクセスできます。

  • rake contrast:service:statusonlineまたはofflineが返されます。

  • rake contrast:service:startローカルのRubyエージェントの設定を使用してサービスの起動を試みます。

  • rake contrast:service:stopサービスの停止を試みます。エージェントが追加のリクエストを受信した場合は、自動的にサービスの再起動が試行されます。

ヒント

サービスのホストとポートの値が一致していることを確認してください。

Rubyエージェントによって保護されているアプリケーションが複数ある場合は、最初に起動したエージェントによってサービスが起動します。サービスは複数のエージェントとの通信を処理するよう設計されているため、これは問題ではありません。

ただし、agent.service.hostagent.service.portの設定値が一致しない場合、追加のエージェントは先に起動されたサービスと通信できなくなります。