Azure Monitorログのアーカイブや基本ログの概要、検索ジョブ、設定、復元手順
Azure Monitor ログ(Log Analytics)でアーカイブログや基本ログプラン(Basic)が追加されました。
General availability: Azure Monitor Logs – capabilities to add value and lower costs
特にアーカイブログを使うと7年間保管が可能になるなど使い勝手が良くなっています。
今回は追加になった基本ログプラン(Basic)、アーカイブログなどの概要整理から検索ジョブの実行、アーカイブログの復元などの操作方法確認までやってみました。
基本ログプラン(Basic)やアーカイブとは
基本ログプランの概要
クエリはあまり実行しないけどログ取り込みしたいと言う方向けに基本ログプラン(Basic)が追加されました。
基本ログプラン(Basic)追加に伴い既存のログ収集方法を分析ログプラン(Analytics)と言うようになったようです。
テーブルのログ データプランを Basic または Analytics に設定する
このモードを使うとクエリ実行に課金が発生しますが、ログ取り込み自体の課金を抑える事が出来ます。
基本ログプラン(Basic)と分析ログプラン(Analytics)の機能の違いは公式サイトに記載があります。
Basic と Analytics のログ データ プランを比較する
基本ログプラン(Basic)ではリテンション期間(ログ検索可能な期間)は 8 日と短くなっています。
それ以降はアーカイブとして保管されます。
Azure Monitorでの利用もできない為アラートルールの設定には利用できません。
ログ保管での利用がメインとなります。
アーカイブログの概要
アーカイブログはLog Analyticsワークスペースにログ保管を行うモードです。
アーカイブログを使うとログを7年間保管(通常は2年保管)出来るなど長期保管が可能となっています。
通常は31日を超えてログ保管した場合に発生する課金額も安く抑える事が出来ます。
テーブルのログ データプランを Basic または Analytics に設定する
アーカイブログに対して検索を行う為には、復元の作業が必要になります。復元後にクエリ検索と言う形になります。
またデータ復元にあたっても課金が発生します。
課金の違い
基本ログ(Basic)は分析ログプラン(Analytics)での取り込みに比べ1GBあたり約5分の1の価格に抑える事が出来ます。
東日本リージョン(2022年12月現在)の価格は下記通りになります。
分類 | ログ取り込み | ログ検索 |
分析ログ(Analytics) | $3.34/GB | 無料 |
基本ログ(Basic) | $0.725/GB | $0.008/GB(スキャンされたデータあたり) |
データ保管に関する価格(東日本リージョン(2022年12月現在))は下記通りになります。
アーカイブログでは約5分の1の価格に抑える事が可能です。
復元されたデータに対して課金が1日あたり発生します。復元後は速やかに削除する事が必要になります。
分類 | データ保管 | 追加課金 |
データ保持 | 1 GB あたり $0.15/月 | - |
データ アーカイブ | 1 GB あたり $0.029/月 | データ復元 1 日あたり GB あたり $0.145 |
※最小復元データ容量単位が2TB(切り上げ)となっています。課金額については注意が必要です。
基本ログプラン(Basic)やアーカイブ設定
Azure Portalを使って基本ログプラン(Basic)設定します。
Log Analyticsワークスペースのリソースメニューにあるテーブルで設定します。
基本ログプラン(Basic)の設定
基本ログプラン(Basic)への変更、アーカイブ設定します。
基本ログプラン(Basic)をサポートしているテーブルは限られています。
分析ログプラン(Analytics)でアーカイブ設定
分析ログプラン(Analytics)でアーカイブ設定をしてみます。
テーブル単位で保持期間の設定が出来ます。
今回はVMComputerで実施してみます。
検索ジョブ
検索ジョブにはAzure Portal、REST API、Azure CLIが使えます。
今回はAzure Portalを使います。
検索ジョブは基本ログの検索を行う場合や10分以上かかるKQLクエリを実行する場合などに利用します。
検索ジョブの実行結果は新規テーブルに出力されます。
検索ジョブの実行
VMProcessのテーブルをサンプルに検索ジョブを実行します。
VMProcessのテーブルを対話型の保持期間30日間、保持期間の合計を60日間(アーカイブ期間30日間)に変更します。
2022年11月9日(UTC)まで対話型のクエリ検索が可能な期間の状態で実施しています。
※アーカイブ期間のログ取得は復元を使います。検索ジョブで直接取得する事は出来ません。
検索ジョブ実行時のエラーについて
検索ジョブ実行時にエラーや結果が得られないケースがあります。
検索ジョブ実行エラー | |
検索対象にアーカイブログ期間を含めずに実行します。 この場合はエラーになります。 |
|
検索対象をアーカイブログ期間のみした場合です。 ※検索ジョブでアーカイブログの取得が出来ない為結果は空になります。 |
|
アーカイブログの復元
アーカイブログは直接クエリ検索できません。ログの復元が必要になります。
復元にはREST APIやAzure CLIを使います。
Azure Portalを使った復元は提供されていません。(2022年12月現在)
こちらを参考に手順を確認します。
アーカイブログ復元コマンド
Azure CLIを使ったログ復元にはaz monitor log-analytics workspace table restoreを使います。
-
- クエリ設定内容
- Log Analyticsワークスペース名:test-loganalytics-workspace-01
- リソースグループ名:test-rg
- 復元元のテーブル:VMProcess
- 復元先のテーブル名:VMProcess_RST
- 復元期間(開始):2022-11-03T00:00:00.000
- 復元期間(開始):2022-11-05T00:00:00.000
- クエリ設定内容
作成したクエリです。復元先のテーブル名は_RSTで終わる必要があります。
アーカイブログ復元のクエリ | ||
|
復元後の確認
復元されたアーカイブログを確認します。
復元されたアーカイブログの確認 | |
クエリで指定したテーブルにログが復元されます。 指定した範囲のログが復元されている事が分かります。 検索ジョブとは異なりTimeGeneratedは変わりません。 |
|
テーブル一覧を確認します。 種類に復元されたログとして表示されます。 |
テーブルの削除
検索ジョブ結果や復元されたログのテーブルは利用後削除します。
※削除しないと無駄な課金が発生します。特に復元されたログのテーブルの課金は1日単位で発生します。
テーブルの削除 | |
テーブルで削除を選択します。 | |
確認メッセージが表示されるのではいと入力します。 | |
テーブル削除されている事が確認出来ます。 |
最後に
Azure Monitorログ(Log Analytics)でアーカイブログ機能中心に確認してみました。
各テーブル(ログの種別)単位で保管期間が設定出来たり保管期間を7年にする事が出来るなど便利になっています。
検索ジョブなども便利に使えるようになっておりとても便利かと思いました。
今後も引き続き色々試してみたいと思います。