ABBYY FlexiCapture 12 レポートサービスの構成
このサービスは、すべての情報を別個のデータベースに保存します。そのため、インストールが完了したら、文書処理に関するデータを保存するデータベースを作成する必要があります。これを行うには、次の手順に従ってください。
- ABBYY FlexiCapture 12 レポートサービスがインストールされているコンピューターで、管理者権限で PowerShell を起動します。
- サービスのインストール先ディレクトリにある CreateDb フォルダーに移動します。サービスが既定のパスにインストールされている場合は、次のコマンドを使用することもできます。
cd C:\inetpub\wwwroot\FlexiCapture12Reporting\CreateDb
- 必要なパラメーターを指定して CreateEventLogDb.ps1 スクリプトを実行します。例:
CreateEventLogDb.ps1 HostName\SQLInstanceName DATABASENAME user password
このスクリプトのパラメーターは、作成するデータベース名とお使いの認証情報に置き換える必要があります。
重要! User と Password は省略可能なパラメーターで、Microsoft SQL 認証を使用する場合にのみ指定します。スクリプトの実行時に User または Password を指定しない場合、プログラムはレポートサービスの実行に使用されている Windows アカウントを使用します。この Windows アカウントに、レポートサービス データベースへのアクセス権限があることを確認してください。
4. 管理および監視コンソールの web.config ファイルの AppSettings セクションに、次のキーを追加します。
<add key=“ExternalLogServiceSettingEnabled” value=“true” />
変更を保存します。
5. 管理および監視コンソールを開き、設定 → イベントログ モード に移動します。ABBYY FlexiCapture 12 レポートサービス field で、次の形式でレポートサービスのアドレスを指定します: http://<ServiceAddress>:8001.
ポート 8001 が他のアプリケーションで使用されていないことを確認してください。
6. Internet Information Services (IIS) で、“FlexiCapture 12 Reporting” Application Server プールをリサイクルします。
上記の手順を完了すると、プログラムは既定のテナントの文書処理データを、データベース内の DocumentEditingStatistic テーブルと EventLog テーブルに記録します。
レポートサービス の準備ができたら、このコンポーネントをインストールして使用する場合は、データアクセスコンポーネントを構成します。
- データアクセスコンポーネントがインストールされているディレクトリに移動します。既定のディレクトリは C:\inetpub\wwwroot\FlexiCapture12ReportingDataAccess. です。
- appsettings.json ファイルを開き、次の設定を指定します。
- アプリケーションサーバーの web.config にある DecryptionKey。この設定は既定で C:\inetpub\wwwroot\FlexiCapture12\Server にあります。
- アプリケーションサーバーの web.config にある ValidationKey。
- レポート用データベースに接続するための ConnectionString。これは レポートサービス の appsettings.json にあります (既定のパスは C:\inetpub\wwwroot\FlexiCapture12Reporting です) 。
- ReportingDataPath — データのエクスポート先フォルダーへのパス。テナントが複数ある場合は、各テナントのデータが個別のサブフォルダーに保存されます。
- RunTenantsDataGenerationPeriodSec — 新しいレポートデータを自動エクスポートする間隔 (秒単位) 。既定値は 14400 で、4 時間に相当します。
ValidationKey、ConnectionString、RunTenantsDataGenerationPeriodSec、ReportingDataPath の各パラメーターは、データアクセスコンポーネントとともにインストールされる appsettings.json ファイルには含まれていません。これらのパラメーターは、DecryptionKey パラメーターの後にカンマで区切って手動で追加する必要があります。
- IIS で ABBYY FlexiCapture ReportingResults Web サービスを再起動します。
- Services で ABBYY FlexiCapture ReportingResults Service を再起動します。
上記の手順を完了すると、プログラムは appsettings.json で指定されたフォルダーにレポートデータを自動的にエクスポートします。なお、自動データエクスポートの場合、レポートサービス は前日に蓄積されたレポートデータをエクスポートします。つまり、レポートデータの最初のエクスポートは、レポートサービス をインストールして構成した 1 日後に実行されます。また、API を使用していつでも手動でレポートデータをエクスポートできます (詳しい手順については、REST API data access を参照してください) 。
ABBYY FlexiCapture 12 レポートサービスで使用するデータベースの変更
レポートサービスで使用するデータベースを変更するには、appsettings.json ファイルを修正する必要があります。これは手動で行うこともできます。また、ABBYY FlexiCapture 12 Release 4 Update 2 以降では、EventLogApiCreateDb.exe ユーティリティと ConnectEventlogDb.ps1 スクリプトを組み合わせて行うこともできます。
データがすでに含まれている既存のデータベースに切り替えることも、新しい空のデータベースに切り替えることもできます。新しい空のデータベースに切り替える場合は、EventLogApiCreateDb.exe ユーティリティによって最初にデータベースが初期化されます。
以下に手順を示します。
-
手動でデータベースを変更するには:
- ABBYY FlexiCapture 12 レポートサービスがインストールされているコンピューターで、管理者権限で PowerShell を起動します。
- C:\inetpub\wwwroot\FlexiCapture12Reporting にある appsettings.json ファイルを開き、必要な変更を行います。
-
EventLogApiCreateDb.exe ユーティリティを使用してデータベースを変更するには:
- 該当するユーティリティコマンドを実行します:
- 新しい空のデータベースを初期化するには:
EventLogApiCreateDb.exe [ServerName] [NewDatabaseName] [User Password] init
- すでにデータが含まれている既存のデータベースに接続するには:
EventLogApiCreateDb.exe [ServerName] [NewDatabaseName] [User Password] connect
このユーティリティは、appsettings.json ファイルから接続文字列を読み込みます。
- ConnectEventlogDb.ps1 スクリプトを実行して、appsettings.json ファイル内の接続文字列を変更します。スクリプトの一般的な書式は次のとおりです:
ConnectEventlogDb.ps1 ServerName OtherDatabaseName [User Password]
セキュリティ上の対策として、appsettings.json 内のパスワードは暗号化されます。その後、ConnectEventlogDb.ps1 スクリプトにより レポートサービス が再起動されます。
既定以外のテナントで レポートサービス を有効にする
既定では、レポートサービス は既定のテナントでのみ実行されます。既定以外のテナントで レポートサービス を有効にするには、dbo.Tenant テーブルの Flags field で、該当するテナントに対応する先頭ビットを設定します。
これにより、プログラムは指定した既定以外のテナントの文書処理データを、データベース内の DocumentEditingStatistic テーブルおよび EventLog テーブルに記録するようになります。