利用率サブシステム
利用率サブシステムのサービスは、実行統計を提供します。このサブシステムのサービスを使用することで、次の情報を取得できます。
サービスの実行完了までにかかる時間 (最小、最大、および平均時間) (単位: ミリ秒)
サービスが実行される回数
タイムアウトによって終了した JavaScript のサービスおよび購読。以下のタイムアウトによって終了したスクリプト実行の統計を参照してください。
Thing の購読の実行完了までにかかる時間 (最小、最大、および平均時間)
thisSub.JSONState を使用している場合、Thing の購読のメモリサイズ (バイト)。
統計は、サーバーが最後に再起動された時点から記録されますが、「統計永続を有効化」オプションを有効にすることで永続化できます。WriteStatisticsReport サービスを使用すると、これらの統計を含む CSV ファイルを ThingworxStorage フォルダに書き込めます。
* 
統計は、完了したサービスに関してのみ提供されます。実行が終了していないサービスは統計に含まれません。
パラメータ
デフォルト
説明
時間統計を有効化
false
有効な場合、プラットフォームが統計を収集します。無効な場合、サービスは統計を返しません。
メモリサイズ統計を有効化
false
有効な場合、プラットフォームがメモリサイズ統計を収集します。無効な場合、サービスは統計を返しません。
統計永続を有効化
false
有効にすると、サーバーを再起動しても、すべてのランタイム統計が維持されます。プラットフォームが再起動した後もデータが維持されます。
* 
ベストプラクティスとして、頻繁に変化しないデータ (1 日に数回しか変化しないデータ、履歴値が不要なデータなど) に対して「統計永続を有効化」を使用します。過剰に使用すると、「統計永続を有効化」によってパフォーマンスが低下する可能性があります。
時間統計を表示
true
時間統計を表示します。
メモリサイズ統計を表示
false
メモリサイズ統計を表示します。
エンティティ名集約を有効化
true
複数のエンティティが同じサービスを使用している場合は、サービスで集約された統計が表示されます。
* 
集約を有効化するとメモリを節約できます。オフにすると、パフォーマンスに影響する可能性があります。メモリが許容できないレベルに増大する場合は、ResetStatistics サービスを実行します。
パーセンタイル値を表示
false
コンフィギュレーションテーブルにパーセンタイルに関する追加統計を表示します。
UtilizationStatistics サービス
サービス
説明
GetAuthenticationStatistics
指定した認証タイプに対して発生した認証回数と、それが成功したのか、失敗したのかに関するデータが返されます。認証タイプには、フォームログイン、HTTP 基本、アプリケーションキー、SSO、カスタム認証システムが含まれます。
GetEntityServiceStatistics
エンティティごとにサービス実行の最小、最大、平均回数を返します。
* 
集約が有効な場合は、すべてのエンティティに対して 1 つのサービスを返します。
GetEntityStatistics
GetEntityServiceStatistics および GetEntitySubscriptionStatistics サービスの統計の組み合わせを返します。
GetEntitySubscriptionStatistics
エンティティに対するイベント購読の実行時間/メモリサイズの統計 (最小、最大、平均、数) を返します。
GetPropertyVTQCount
クエリー基準によって指定されたプロパティの数を返します。詳細については、「GetPropertyVTQCount サービスの使用」を参照してください。
GetQueryStatistics
クエリー統計を返します。詳細については、「クエリー統計」を参照してください。
GetStatistics
GetEntityServiceStatisticsGetEntitySubscriptionStatisticsGetAuthenticationStatistics サービスのすべての統計を返します。最小時間、最大時間、平均時間、実行された各サービスの数が含まれます。購読にはメモリ統計も含まれる場合があります。
ResetAuthenticationStatistics
認証統計をリセットします。
ResetEntityServiceStatistics
エンティティサービスの統計をリセットします。
ResetEntityStatistics
エンティティ統計をリセットします。
ResetQueryStatistics
クエリー統計をリセットします。詳細については、「クエリー統計」を参照してください。
ResetStatistics
すべての統計をリセットします。
ResetEntitySubscriptionStatistics
エンティティの購読統計をリセットします。
WriteAuthenticationStatisticsReport
一意の名前の CSV ファイルを次の場所に書き込みます: ThingworxStorage/reports/UtilizationStatistics
WriteEntityServiceStatisticsReport
一意の名前の CSV ファイルを次の場所に書き込みます: ThingworxStorage/reports/UtilizationStatistics
WriteEntityStatisticsReport
一意の名前の CSV ファイルを次の場所に書き込みます: ThingworxStorage/reports/UtilizationStatistics
WriteEntitySubscriptionStatisticsReport
一意の名前の CSV ファイルを次の場所に書き込みます: ThingworxStorage/reports/UtilizationStatistics
WriteQueryStatisticsReport
クエリー統計を書き込みます。詳細については、「クエリー統計」を参照してください。
WriteStatisticsReport
一意の名前の CSV ファイルを次の場所に書き込みます: ThingworxStorage/reports/UtilizationStatistics
統計のネーミングパターン
ネーミングパターンは次のとおりです。
プレフィックス twx.stats 下にはすべての統計が収集されます。
twx.stats.authentication の下には認証統計が収集されます。
twx.stats.entity の下にはエンティティ統計が収集されます。
この下にはエンティティサービス統計が収集されます: twx.stats.entity.<エンティティ名>.services.<サービス名>
次の名前の下にはエンティティ購読統計が収集されます: twx.stats.entity.<エンティティ名>.subscriptions.<購読名>
twx.stats.query の下にはクエリー統計が収集されます。
サービスの "ネーミング" パラメータのデータ型には、次のようなものがあります。
プレフィックス - 統計を返すサービスの先頭に追加します。たとえば、認証統計のみを表示するには、twx.stats.authentication プレフィックスを GetStatistics サービスに提供するか、GetAuthententicationStatistics コンビニエンスサービスをパラメータなしで使用します。
正規表現 - エンティティ名とサービスに対して使用できます。集約オプションがオフになっている場合、正規表現パターンに従うすべてのエンティティを表示できます。正規表現を使用して、Get という単語で始まる特定のサービスを表示することもできます使用される正規表現パターンは、https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html に示されている Java Regex パターンに従っています。
タイムアウトによって終了したスクリプト実行の統計
ThingWorx Platform は長時間実行しているスクリプトを終了し、プラットフォームのログにこの処理のレポートを記録します。ThingWorx Platform は、タイムアウトによるスクリプト終了に関する統計も収集します。設定されているスクリプトタイムアウトの値を実行時間が超えた場合に統計が記録されます。プラットフォームは JavaScript で記述されたサービスおよび購読の統計を収集します。
* 
デフォルトでは、ThingWorx プラットフォームでのスクリプトのタイムアウトの設定は 30 秒です。スクリプトがこれよりも長く実行されると、プラットフォームが実行を強制終了します。ThingWorx 管理者は、platform-settings.json コンフィギュレーションファイルの基本設定セクションでスクリプトのタイムアウトを設定できます。「platform-settings.json コンフィギュレーションの詳細」も参照してください。
統計は利用率サブシステム上の以下のサービスから結果に追加されます。
GetStatistics
GetEntityStatistics
GetEntityServiceStatistics
GetEntitySubscriptionStatistics
WriteStatisticsReport
WriteEntityStatisticsReport
WriteEntityServiceStatisticsReport
WriteEntitySubscriptionStatisticsReport
各サービスのタイムアウトの統計には以下の命名パターンが使用されます。

twx.stats.entity.<entity-name>.services.<service-name>.timedout
同様に、各購読のタイムアウトの統計には以下の命名パターンが使用されます。

twx.stats.entity.<entity-name>.subscriptions.<subscription-name>.timedout
これらの timedout 統計では、指定されているスクリプトがタイムアウトしたときのオカレンスと時間の統計が追跡されます。
これは役に立ちましたか?