Log Analytics ワークスペースの日次上限を設定する
Log Analytics ワークスペースに日次上限を設定しておくと、残りの時間 (指定したしきい値に達した場合の 24 時間など)、Analytics または Basic テーブル プランのテーブル用の課金対象ログ データの収集を停止することで、データ インジェストの料金の予想外の増加を抑えることができます。 Auxiliary テーブル プランのテーブルには、日次上限は適用されません。
この記事では、日次上限のしくみと、ワークスペースで上限を構成する方法について説明します。
重要
データ収集が停止すると、リソースの正常性の状態を観察したり、アラートを受信したりする機能に影響が出るため、日次上限を設定する際には注意が必要です。 また、ワークスペースで利用できる最新のデータに機能が依存している他の Azure サービスやソリューションに影響を与える可能性もあります。 1 日の上限に頻繁に到達するように設定するのではなく、予期せぬデータ収集量の増加による予期せぬ課金を回避するために、まれに使用する方法として用いることを目標にすることをお勧めします。
Azure Monitor のコストを削減するための戦略については、コストの最適化と Azure Monitor に関するページを参照してください。
必要なアクセス許可
アクション | 必要なアクセス許可またはロール |
---|---|
Log Analytics ワークスペースの日次上限を設定する | 日時上限を設定する Log Analytics ワークスペースに対する Microsoft.OperationalInsights/workspaces/write アクセス許可。これは、たとえば、Log Analytics 共同作成者組み込みロールによって提供されます。 |
クラシック Application Insights リソースの日次上限を設定する | 日時上限を設定するクラシック Application Insights リソースに対する microsoft.insights/components/CurrentBillingFeatures/write アクセス許可。これは、たとえば、Application Insights コンポーネント共同作成者の組み込みロールによって提供されます。 |
Log Analytics ワークスペースの日次上限に達したときにアラートを作成する | microsoft.insights/scheduledqueryrules/write アクセス許可。これは、たとえば、監視共同作成者の組み込みロールによって提供されます。 |
クラシック Application Insights リソースの日次上限に達したときにアラートを作成する | microsoft.insights/activitylogalerts/write アクセス許可。これは、たとえば、監視共同作成者の組み込みロールによって提供されます。 |
日次上限の効果を表示する | クエリを実行する Log Analytics ワークスペースに対する Microsoft.OperationalInsights/workspaces/query/*/read アクセス許可。これは、たとえば、Log Analytics 閲覧者組み込みロールによって提供されます。 |
日次上限のしくみ
各ワークスペースには、独自のデータ ボリュームの上限を定義する日次上限が設定されています。 日次上限に達すると、Azure portal にある選択した Log Analytics ワークスペースのページの上部に警告バナーが表示され、LogManagement カテゴリの Operation テーブルに操作イベントが送信されます。 必要に応じて、このイベントの作成時にアラートを送信するアラート ルールを作成することができます。
日次上限に使用されるデータ サイズは、顧客が定義したデータ変換後のサイズです。 (データ収集ルールにおけるデータ変換についての詳細情報。)
データ収集は、ワークスペースごとに異なる時間が設定されている、リセット時間に再開されます。 このリセット時間は構成できません。 必要に応じて、このイベントの作成時にアラートを送信するアラート ルールを作成することができます。
Note
日次上限によって、指定された上限レベルで厳密にデータ収集を停止することはできず、一部のデータが超過することが予想されます。 特にワークスペース上で大量のデータを受信している場合、日次上限を超えるデータ収集が大きくなる可能性があります。 データが上限を超えて収集された場合でも、請求は発生します。 日次上限の動作の確認に役立つクエリについては、「日次上限の効果を表示する」セクションを参照してください。
日次上限を使用するタイミング
日次上限は、特にコスト意識の高い組織で使用されるのが一般的です。 これは、コストを削減するための方法としてではなく、特定の予算を超えないようにするための予防措置として使用する必要があります。
データ収集が停止すると、そのワークスペースに依存している機能とリソースの監視が事実上できなくなります。 日次上限のみに頼るのではなく、データ収集が日次上限に達する前の特定のレベルに達したときに通知するようにアラート ルールを作成できます。 通知により、データ収集がシャットダウンする前に増加に対処したり、重要度の低いリソースの収集を一時的に無効にしたりすることができます。
Application Insights
Application Insights と Log Analytics の両方の日次上限設定を構成して、サービスによって取り込まれるテレメトリ データの量を制限する必要があります。 ワークスペースベースの Application Insights リソースの場合、有効な日次上限は 2 つの設定の最小値です。 従来の Application Insights リソースの場合、データが Log Analytics ワークスペースに存在しないため、Application Insights の日次上限のみが適用されます。
ヒント
Application Insights によって収集される課金対象データの量が気になる場合は、サンプリングを構成して、データ ボリュームを希望するレベルに調整する必要があります。 日時上限は、アプリケーションが予期せず大量のテレメトリの送信を開始した場合の安全策として使用します。
高トラフィック アプリケーション用に最大値の引き上げを要求する場合を除き、Application Insights のクラシック リソースでの上限は 1,000 GB/日です。 Azure portal でリソースを作成する場合、日次上限は 100 GB/日に設定されます。 Visual Studio からリソースを作成する場合の既定値は小 (32.3 MB/日) です。 日次上限の既定値は、テストを容易にするために設定されます。 アプリを実稼働環境にデプロイする前に、ユーザーが日次上限を上げることになります。
Note
接続文字列を使用してリージョン インジェスト エンドポイントを使用する Application Insights にデータを送信している場合、Application Insights と Log Analytics の日次上限設定はリージョンごとに有効です。 インストルメンテーション キー (ikey) のみを使用してグローバル インジェスト エンドポイントを使用する Application Insights にデータを送信している場合、Application Insights の日次上限設定はリージョンをまたいで有効にならない可能性がありますが、Log Analytics の日次上限設定は適用されます。
Application Insights には使用できなかったクレジットがある一部のサブスクリプションの種類の制限を除去しました。 これまでは、サブスクリプションに使用制限がある場合は、[日次上限] ダイアログに、使用制限を解除して日次上限を 32.3 MB/日から引き上げる方法が表示されました。
日次上限を決定する
ワークスペースの適切な日次上限を判断するには、Azure Monitor のコストと使用状況に関するページを参照して、データ インジェストの傾向を把握してください。 また、ワークスペースの使用量をより詳細に分析する方法を提供する、Log Analytics ワークスペースで使用状況を分析する方法に関するページを確認することもできます。
Microsoft Defender for Cloud を含むワークスペース
重要
2023 年 9 月 18 日以降、Azure Monitor では、日次上限に達すると、課金対象のすべての
データ型が制限されるようになっています。 Microsoft Defender for Servers がワークスペースで有効になっている場合は、どのデータ型についても特別な動作はありません。
この変更により、予想を超えるデータ インジェストのコストを完全に含められるようになります。
Microsoft Defender for Servers が有効になっているワークスペースに日次上限を設定している場合は、その上限がこの変更の実施に十分に対応できるものであることを確認してください。
また、日次上限に達したらすぐに通知されるように、必ずアラートを設定してください (以下を参照してください)。
2023 年 9 月 18 日までは、2017 年 6 月 19 日より後にワークスペースで Microsoft Defenders for Servers ソリューションが有効になった場合、Microsoft Defender for Cloud または Microsoft Sentinel のセキュリティ関連の一部のデータの種類は、設定された日次上限に関係なく収集されます。 次のデータの種類は、日次上限によるこの特別な例外の対象になります: WindowsEvent、SecurityAlert、SecurityBaseline、SecurityBaselineSummary、SecurityDetection、SecurityEvent、WindowsFirewall、MaliciousIPCommunication、LinuxAuditLog、SysmonEvent、ProtectionStatus、Update、UpdateSummary、CommonSecurityLog、Syslog
1 日の上限を設定する
Log Analytics ワークスペース
Azure portal で Log Analytics ワークスペースの日次上限を設定または変更するには、以下の手順を実行します。
- [Log Analytics ワークスペース] メニューからワークスペースを選択し、[使用量と推定コスト] を選択します。
- ページの上部にある [日次上限] を選択します。
- [ON] を選択し、GB/日単位でデータ ボリュームの制限を設定します。
注意
ワークスペースのリセット時間が表示されますが、構成することはできません。
Azure Resource Manager で日次上限を構成するには、ワークスペース - 作成または更新に関するページの説明に従って、WorkspaceCapping
の下の dailyQuotaGb
パラメーターを設定します。
従来の Application Insights リソース
Azure portal で従来の Application Insights リソースの日次上限を設定または変更するには、以下の手順を実行します。
- [監視] メニューから、[アプリケーション]、ご自身のアプリケーション、[使用量と推定コスト] の順に選択します。
- ページの上部にある [データ上限] を選択します。
- データ ボリュームの制限を GB/日で設定します。
- 1 日の上限に達したときにサブスクリプション管理者に電子メールを送信する場合は、そのオプションを選択します。
- 日次上限の警告レベルをデータ ボリュームの制限に対する割合で設定します。
- 日時制限の警戒レベルに達したときにサブスクリプション管理者に電子メールを送信する場合は、そのオプションを選択します。
Azure Resource Manager で日次上限を構成するには、warningThreshold
ワークスペース - 作成または更新に関するページの説明に従って、dailyQuota
、dailyQuotaResetTime
、および のパラメーターを設定します。
1 日の上限に達したら警告する
Log Analytics ワークスペースの日次上限に達すると、Azure portal にバナーが表示され、ワークスペースの Operations テーブルにイベントが書き込まれます。 この現象が発生したときに能動的に通知できるよう、アラート ルールを作成する必要があります。
1 日の上限に達したときにアラートを受信するには、次の詳細を指定したログ検索の警告ルールを作成します。
設定 | 値 |
---|---|
スコープ | |
ターゲット スコープ | Log Analytics ワークスペースを選択します。 |
Condition | |
シグナルの種類 | ログ |
シグナル名 | カスタム ログ検索 |
クエリ | _LogOperation | where Category =~ "Ingestion" | where Detail contains "OverQuota" |
Measurement | 測定: テーブル行 集計の種類: カウント 集計の細分性: 5 分 |
アラート ロジック | 演算子:より大きい しきい値: 0 評価の頻度: 5 分 |
アクション | しきい値を超えたときに通知するアクション グループを選択または追加します。 |
詳細 | |
重大度 | 警告 |
アラート ルール名 | 1 日のデータ制限に達しました |
従来の Application Insights リソース
従来の Application Insights リソースの日次上限に達すると、Azure Activity ログに以下のシグナル名でイベントが作成されます。 また、必要に応じて、上限に達したときと、日次上限の指定された割合に達したときに、サブスクリプション管理者に電子メールが送信されるようにすることもできます。
- Application Insights コンポーネントの日次上限の警告しきい値に到達しました
- Application Insights コンポーネントの日次上限に到達しました
日次上限に達したときにアラートを送信するには、次の詳細を指定したアクティビティ ログ アラート ルールを作成します。
設定 | 値 |
---|---|
スコープ | |
ターゲット スコープ | アプリケーションを選択します。 |
Condition | |
シグナルの種類 | アクティビティ ログ |
シグナル名 | Application Insights コンポーネントの日次上限に到達しました または Application Insights コンポーネントの日次上限の警告しきい値に到達しました |
重大度 | 警告 |
アラート ルール名 | 1 日のデータ制限に達しました |
日次上限の効果を表示する
次のクエリを使用すると、Log Analytics ワークスペースの日次上限のリセット間で日次上限の対象となるデータ ボリュームを追跡できます。 この例では、ワークスペースのリセット時間は 14:00 です。 1 日あたりの上限の構成ページに表示されるワークスペースのリセット時間に合わせて DailyCapResetHour
を変更します。
let DailyCapResetHour=14;
Usage
| where TimeGenerated > ago(32d)
| extend StartTime=datetime_add("hour",-1*DailyCapResetHour,StartTime)
| where StartTime > startofday(ago(31d))
| where IsBillable
| summarize IngestedGbBetweenDailyCapResets=sum(Quantity)/1000. by day=bin(StartTime , 1d) // Quantity in units of MB
| render areachart
ワークスペースで Update Management ソリューションが実行されていないか、ソリューションのターゲット設定が有効になっている場合は、Update
および UpdateSummary
データ型を where Datatype
行に追加します (詳細はこちら。)
次の手順
- Log Analytics ワークスペース内のデータに対する料金の計算方法と、料金を削減するためのさまざまな構成オプションの詳細については、Azure Monitor ログの価格の詳細に関するページを参照してください。
- Log Analytics ワークスペース内のデータに対する料金の計算方法と、料金を削減するためのさまざまな構成オプションの詳細については、Azure Monitor ログの価格の詳細に関するページを参照してください。
- ワークスペース内のデータの分析の詳細については、Log Analytics ワークスペースでの使用量の分析に関するページを参照し、使用量が予想よりも多いソースと、収集されるデータ量を減らせる機会を確認してください。