エンドポイント分析でのアプリケーションの信頼性

アプリケーションの信頼性レポートには、管理対象デバイス上のデスクトップ アプリケーションの潜在的な問題に関する分析情報が提供されます。 エンド ユーザーの生産性に影響している上位のアプリケーションをすばやく特定できるだけでなく、これらのアプリケーションの全体的なアプリ使用状況とアプリのエラー メトリックを確認することもできます。 レポートでは、特定のデバイス データの詳細を確認し、アプリの信頼性に関するイベントのタイムラインを表示して、エンド ユーザーに影響を与える問題のトラブルシューティングを行います。

エンドポイント分析のアプリケーション信頼性レポート

前提条件

  • デバイスはエンドポイント分析に登録されます。
  • Configuration Manager から登録されたデバイスには、クライアント バージョン 2006 以降がインストールされている必要があります

アプリの信頼性スコア

アプリの信頼性スコアは、環境全体のデスクトップ アプリケーションの堅牢性を高レベルで表示します。 他のエンドポイント分析スコアと同様に、 アプリの信頼性スコア は 0 ~ 100 の数値です。 スコアは、[アプリのパフォーマンス] タブにある環境内の各デスクトップ アプリケーションのアプリの信頼性スコアから計算されます。

[アプリのパフォーマンス] タブの各アプリケーションには、次に基づいてアプリの信頼性スコアが割り当てられます。

  • クラッシュの頻度: アプリごとに、合計クラッシュ数と 14 日間のローリング ウィンドウの使用期間の合計を使用して、[エラーの平均時間] の値を計算します。 この計算により、クラッシュ率が正規化され、異なるアプリケーション間でクラッシュ イベントの相対的な頻度を直接比較することができます。 この値は、アプリの信頼性スコアに大きく影響します。
  • 使用期間の合計: すべての登録済みデバイスの使用期間を考慮することで、最も妨害的なアプリケーションの問題が優先されるようになります。

[アプリのパフォーマンス] タブ

[アプリのパフォーマンス] タブでは、過去 14 日間のデータを使用して、組織内の各デスクトップ アプリケーションの信頼性に関する分析情報を表示します。 レポートには、次のアプリケーションが含まれます。

  • 組織内での使用量が測定可能なフォアグラウンド アプリケーション。 これらのアプリケーションを含めると、レポートがエンド ユーザーに影響を与える問題に焦点を当てることが保証されます。

  • アクティブなデバイス数が 5 台以上のアプリケーション、またはテナントの登録デバイス数の合計の 2% 以上のアプリケーションのうち、いずれか多い方のアプリケーション。 これらのアプリケーションを含めることは、ノイズを除外するのに役立ち、意味のある十分な数のデバイス間で計算が行われるようにします。

エンドポイント分析の [アプリケーション パフォーマンス] タブ

このレポートでは、各アプリケーションごとに、次のデータが提供されます。

アプリ名: クライアント デバイスによって提供されるファイル マニフェスト内のアプリ識別子。 アプリ名は通常、実行可能ファイル (または.exe) 形式です。

アプリの表示名: friendly name ファイル マニフェストで報告されたアプリケーションの名前。 この列は、データが常に利用可能ではないため、既定では非表示になっています。

アプリの発行元: ファイル マニフェストで報告された実行可能ファイルの発行元。 アプリの発行元では、制限付きのクリーンアップが行われます。 たとえば、Microsoft Corporationmicrosoft corporation はクリーンアップ中に折りたたまれます。 ただし、アプリのメタデータが使用できない、null である、または不正確になる可能性がある場合は、アプリのメタデータが追加されたり変更されたりすることはありません。

アクティブなデバイス (14 日間): 去 14 日間に少なくとも 1 回はこのアプリを起動したテナントの登録済みデバイスの合計数。

合計使用期間 (14日間): 過去 14 日間のすべてのテナントの登録済みデバイス間でのアプリケーションの累積使用期間。 エンゲージメント時間は、使用期間を決定するために使用されます。 エンゲージメント時間は、次の両方で構成されます。

  • 操作時間: Web の閲覧など、ユーザーがアプリケーションに積極的に関与している時間
  • キープアライブ時間: PowerPoint の提示やビデオの視聴など、アプリケーションが OS からキープアライブを要求している時刻。

クラッシュの総数 (14日間): 過去 14 日間にテナント内のすべての登録済みデバイスで報告されたアプリケーション クラッシュ イベントの合計数。

エラーの平均時間: クラッシュ発生前にエンド ユーザーがアプリケーションを使用できる過去 14 日間の平均エンゲージメント時間。 この値は、合計使用期間 (14 日間)合計クラッシュ数 (14 日) で割って計算されます。 使用期間とクラッシュ数を関連付け、さまざまなアプリケーション間でのクラッシュ頻度が正規化されます。 過去 14 日間にテナントでクラッシュ イベントが発生していないアプリケーションには、エラーの平均時間の値として No crash events が付与されます。

アプリの信頼性スコア: テナント内のアプリケーションの相対的な信頼性を表す 0 から 100 のスコア。 このスコアは、エラーの平均時間使用期間の合計 (14 日間) に基づいて計算されます。 スコア 0 は、エンド ユーザーの生産性を妨げる可能性が高い、信頼性の低いアプリを表します。 スコア 100 は、エンドユーザーの生産性に貢献する可能性が高い、信頼性の高いアプリを表します。

注:

アプリケーションごと、デバイスごと、1 日あたりで最大 10 件のアプリケーション クラッシュ イベントが使用されます。 これにより、アプリケーションの重大な問題を持つデバイスからの過剰なデータ収集を防止し、異常値を示すデバイスが個々のアプリケーションの信頼性スコアに過度な影響を与えることを防ぎます。

特定のデバイスのフォアグラウンド使用量がわずかな量 (約 10 分以下) のアプリケーションはキャプチャできない場合があります。

アプリのパフォーマンスに関する詳細

[アプリのパフォーマンス] から表内のアプリ名を選択すると、アプリ パフォーマンスの詳細が開きます。 アプリ パフォーマンスの詳細には、次の 2 つのタブがあります。

  • アプリ バージョン: このタブを使用すると、過去 14 日間のアプリケーションの異なるバージョン間で発生したアプリ クラッシュの数とクラッシュの発生した一意のデバイスの数を比較できます。 この情報は、アプリケーションのどのバージョンが最も信頼性が高いかを判断するのに役立ちます。 この情報は、アプリケーションの特定のバージョンで発生する可能性のある問題のトラブルシューティングに役立ちます。 また、これらの分析情報は、展開するアプリケーションのバージョンを決定する際に、更新プログラムをインストールするか、更新プログラムをロールバックするかを決定する際にも重要です。
  • OS のバージョン: このタブは、アプリケーションのエラーの平均時間を Windows の異なるバージョン間で比較します。 この情報は、OS のバージョンとアプリケーションの問題との間における潜在的な相関関係を特定するのに役立ちます。

エンドポイント分析のアプリケーション パフォーマンスの詳細

[デバイスのパフォーマンス] タブ

[デバイスのパフォーマンス] タブには、テナント内の対象となる登録済みの各デバイスのアプリケーションの信頼性に関する分析情報が表示されます。 [アプリ クラッシュの合計数 (14 日間)] 列は、過去 14 日間にデバイスで報告されたアプリからのアプリ クラッシュ イベントの合計数を表します。 これらのクラッシュ イベントは、デバイスにインストールされているあらゆるアプリケーションに関連している可能性があり、必ずしもすべてが同じアプリケーションによるものではありません。

重要

アプリのクラッシュ イベントは、アプリケーションごと、デバイスごとに 1 日あたり 10 回のアプリ クラッシュ イベントに制限されます。

デバイス名を選択すると、そのデバイスの [アプリケーションの信頼性] タブが開きます。 このタブには、指定した期間 (最大 14 日間) のデバイスのアプリ クラッシュとアプリの応答がないイベントのタイムラインが表示されます。 タイムラインの上部にある [フィルター] オプションを使用して、カスタムの時間範囲を選択します。

注:

エンドポイント分析の [ デバイス パフォーマンス ] タブでは、管理者は割り当てられたスコープ タグに従ってアクセスできるデバイスのみを表示します。 スコープ タグの詳細については、「分散 IT のスコープ タグ」を参照してください。 スコアやサマリー ビューなどの集計された分析情報は、テナントに登録されているすべてのデバイスを使用して計算されます。 集計された分析情報にスコープ タグを適用するには、「エンドポイント分析のデバイス スコープ」を参照してください。

既知の問題

エクスポートされた csv ファイルに数値が表示される

レポートするデータを .csv ファイルにエクスポートする場合、エクスポートされたデータでは、オンライン レポートで見慣れているフレンドリ名は使用されません。 次の情報を使用して、エクスポートされたファイルのデータを値の意味にマップします。

アプリケーションの信頼性レポート

  • .csv ファイル内の TotalAppUsageDuration 列と MeanTimeToFailure 列は、単位の整数値です。
  • 2147483647 の MeanTimeToFailure 値は No crash events を意味します

デバイスごとのスコア レポート

  • EndpointAnalyticsScoreStartupPerformanceScore、および AppReliabilityScore 列の -1 または -2 の値は、関連付けられたスコアが使用できないことを意味します

  • 正常性状態:

    HealthStatus .csv レポート値
    0 不明
    1 データの不足
    2 注意が必要
    3 会議の目標

スタートアップ パフォーマンス レポート

CoreBootTimeGPBootTimeCoreLogonTimeGPLogonTimeDesktopUsableTimeMedian、および TimePerProcess 列は、の単位を持つ整数値です。

[どこからでも作業] レポート

  • .csv ファイル内の列名: UpgradeEligibility
    レポート列名: Windows 11 readiness status

    .csv レポート値
    0 アップグレード済み
    1 不明
    2 対応していない
    3 対応
  • ファイル内の.csv列名: GraphDeviceIsManaged
    Report 列名: Microsoft Entra登録済み

クライアント証明書の問題により、一部の登録済み対象デバイスがレポートに表示されない

シナリオ: 一般的でない状況によっては、 デバイスがアプリケーションの信頼性 レポートに表示されない可能性があります。 アプリケーションの信頼性データを報告するデバイスの数は、アプリケーションの信頼性レポートの [デバイスのパフォーマンス] タブにある表のレコード数を見ることで確認できます。

影響を受けるデバイス: この問題は、必要な ServiceCertificate ポリシーをダウンロードできないConfiguration Managerから Endpoint Analytics に登録されているデバイスに影響します。 このポリシーがないと、デバイスはアプリケーションの信頼性データを Endpoint Analytics に報告できません。

重要

これは一般的な問題ではありません。 軽減策を進める前に、不足しているデバイスを以下のとおり確認します。

  • アプリケーションの信頼性レポート前提条件を満たす
  • アクティブに使用されている
  • データの報告を開始するのに十分な時間がある

次のスクリプトを使用して、問題がデバイスに影響を与えるかどうかを判断します。

$query = "SELECT * FROM CCM_PendingPolicyState WHERE PolicyID=""B27D9CFC-84AD-0AF8-9DF1-23EE05E8C05D"""
$obj = Get-WmiObject -Query $query -Namespace "root\ccm\policyagent"
 
foreach ($value in $obj)
{
    if ($value.State  -eq 1)
    {
        Write-Host "Found ServiceCertificate policy in the pending policy list."
    }
} 

軽減策: 影響を受けるデバイスで次のスクリプトを実行して、更新された ServiceCertificate ポリシー状態を強制的にダウンロードします。 すべての手順を完了すると、問題が解決され、デバイスがアプリケーションの信頼性データのアップロードを開始できるようになります。 エンドポイント分析ポータルでデータの表示を開始するには、最大 72 時間を許可します。

On Error Resume Next

Set WshShell = WScript.CreateObject("WScript.Shell")

'First, find the pending policy object
Set wmiService = GetObject("winmgmts:\\.\root\ccm\policyagent")
Set wmiObjs = wmiService.ExecQuery("SELECT * FROM CCM_PendingPolicyState WHERE PolicyID=""B27D9CFC-84AD-0AF8-9DF1-23EE05E8C05D""")

For Each wmiPendingPolicy In wmiObjs
    If wmiPendingPolicy.State = 1 Then

        WScript.Echo "Found ServiceCertificate policy in the pending policy list. Resetting the state to force re-download"

        wmiPendingPolicy.State = 0
        wmiPendingPolicy.Put_

        If Err.Number <> 0 Then
            WScript.Echo "Failed to update ServiceCertificate policy state. Error code = " & Err.Number
        Else
            WScript.Echo "Successfully updated ServiceCertificate policy state."
        End If

    End If
Next