[OCI] ストレージサービスのログ取得方法、メトリクスの見方

# はじめに
Oracle Cloud Infrastructure (以下、OCI)では、ロギング・サービスを使用することで、さまざまなログを一元的に収集し、1つのビューにまとめることができます。そのため、万一障害が発生したとしても、ログを確認することによって、原因の切り分けが可能になります。

ロギング・サービスでは、監査ログ、サービス・ログ・カスタムログを使用できます。また、ログはOCIのリソースだけでなく、他社クラウドやオンプレミス環境のログも取得可能です。

https://docs.oracle.com/ja-jp/iaas/Content/Logging/Concepts/loggingoverview.htm

ログをメールを通じて通知したり、Logging Analytics を併用することで、より詳細なログの分析やグラフなどを用いた視覚化を行うこともできます。

また、Computeに Block Volume をアタッチしてご利用されたり、さまざまなファイルなどのバックアップ等に Object Storage をご利用されている方は多くいらっしゃると思います。

その中でもいつストレージサービスへアップロードを行ったのかログを見たい、各メトリックを見たい、監視したいという方もいらっしゃるでしょう。

本記事では、OCIのストレージサービスのログの取得方法、メトリックの確認方法を理解することを目的とします。イメージは以下の通りです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3742484/aea0525a-3702-74c7-0cf8-4491565115cb.png)


###  前提条件
* 仮想クラウド・ネットワーク(VCN)の作成が完了していること
* 検証で使用する Object Storage、Block Volumeの構築が完了していること

### 手順
1~5はObject Storageのログ取得方法の説明です。Block Volume のログ取得方法については7章で説明を行います。
1\. [ポリシーの設定](https://qiita.com/drafts/8cbe48bfd1fac60bfc7a/edit#1-%E3%83%9D%E3%83%AA%E3%82%B7%E3%83%BC%E3%81%AE%E8%A8%AD%E5%AE%9A)
2\. [ログ・グループの作成](https://qiita.com/drafts#2-%E3%83%AD%E3%82%B0%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%E3%81%AE%E4%BD%9C%E6%88%90)
3\. [サービス・ログの作成](https://qiita.com/drafts#3-%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9%E3%83%AD%E3%82%B0%E3%81%AE%E4%BD%9C%E6%88%90)
4\. [オブジェクトのアップロードとダウンロード](https://qiita.com/drafts#4-%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E3%81%AE%E3%82%A2%E3%83%83%E3%83%97%E3%83%AD%E3%83%BC%E3%83%89%E3%81%A8%E3%83%80%E3%82%A6%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%89)
5\. [サービス・ログの確認](https://qiita.com/drafts#5-%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9%E3%83%AD%E3%82%B0%E3%81%AE%E7%A2%BA%E8%AA%8D)
6\. [メトリックの確認方法](https://qiita.com/drafts#6-%E3%83%A1%E3%83%88%E3%83%AA%E3%83%83%E3%82%AF%E3%81%AE%E7%A2%BA%E8%AA%8D%E6%96%B9%E6%B3%95)
7\. [Block Volume のログ取得と確認](https://qiita.com/drafts#7-block-volume-%E3%81%AE%E3%83%AD%E3%82%B0%E5%8F%96%E5%BE%97%E3%81%A8%E7%A2%BA%E8%AA%8D)

# 1. ポリシーの設定
各ストレージからログ収集の許可のために、IAMポリシー・ステートメントをポリシーの含める必要があります。
例えば、オブジェクトストレージでは下記のようなIAMポリシー・ステートメントの設定が必要です。
~~~
allow group <group_name> to use loganalytics-object-collection-rule in compartment <object_collection_rule_compartment>
allow group <group_name> to {LOG_ANALYTICS_LOG_GROUP_UPLOAD_LOGS} in compartment <log_group_compartment>
allow group <group_name> to {LOG_ANALYTICS_ENTITY_UPLOAD_LOGS} in compartment <entity_compartment>
allow group <group_name> to {LOG_ANALYTICS_SOURCE_READ} in tenancy
allow group <group_name> to {BUCKET_UPDATE, BUCKET_READ} in compartment <object_store_bucket_compartment>
~~~


# 2. ログ・グループの作成
OCI のコンソール画面から 監視および管理 -> ログ・グループ を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3742484/f2028a42-bdc8-b429-ec99-c36a48cd9aa4.png)

ログ・グループの一覧が表示され、_Audit がデフォルトで作成されているのが確認できます。**ログ・グループの作成** をクリックします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3742484/3f55b7b4-f6e5-2eed-1bde-69265130f4bf.png)


ログ・グループの作成は以下の通り行います。
* **コンパートメント** - 各ストレージを作成したコンパートメントを選択
* **名前** - 任意の名前を入力
* **説明** - 任意の説明を入力する
* **タグ・ネームスペース** - なし(フリーフォーム・タグの追加)
  
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3742484/fd6e9e6b-a597-7651-1b01-9a1a174616b5.png)

# 3. サービス・ログの作成
Object StorageとFile Storageでログを取得するためには、サービス・ログの作成が必要です。

OCI のコンソール画面から 監視および管理 -> ログ を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3742484/27d7cb31-59c6-f5d4-7519-6f61855e7831.png)

右側に**サービス・ログの有効化**ボタンがあるので、それをクリックします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3742484/c39a8a43-74c9-6aa8-482c-3419283d8059.png)

サービス・ログの作成は以下の通り行います。
* リソースの選択
    * **リソース・コンパートメント** - 各ストレージを作成したコンパートメントを選択
    * **サービス** - Object Storage 
    * **リソース** - 事前に作成したバケット
* ログの構成
    * **ログ・カテゴリ** - Read Access Events
    * **ログ名** - 任意の名前を入力

 ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3742484/f0e19788-4b38-7d72-53db-5fb07b113ae3.png)

File Storageでも同様の手順でサービス・ログの作成を行います。

# 4. オブジェクトのアップロードとダウンロード
ログを取得するために、オブジェクトストレージにオブジェクトをアップロードしてダウンロードをします。

OCIのコンソール画面から ストレージ -> バケット を選択します。そして、作成済みのバケットを選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3742484/55b78f59-dab6-e4d2-3557-8a87c09c1f00.png)

### アップロード

バケットの詳細画面が表示されるので下にスクロールして**アップロード**をクリックします。

オブジェクトのアップロードは以下の通り行います。
* **オブジェクトの接頭辞** - 空欄のまま
* **ストレージ層** - 標準
* **コンピュータからファイルを選択** - ローカルPCのファイルを選択

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3742484/04d8f143-ccee-d93d-3bf2-ef6411503425.png)

アップロードが完了したら、**閉じる**ボタンをクリックしてください。

### ダウンロード
先ほどアップロードしたオブジェクトの一番右になるメニューから**ダウンロード**をクリックします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3742484/e794baee-5b03-fddc-0ca6-752120c97128.png)

# 5. サービス・ログの確認
先ほど、アップロードとダウンロードした際のログを確認します。

OCIのコンソール画面から 監視および管理 -> ログ を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3742484/27d7cb31-59c6-f5d4-7519-6f61855e7831.png)

そして、[ 3. サービス・ログの作成](https://qiita.com/drafts/8cbe48bfd1fac60bfc7a/edit#3-%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9%E3%83%AD%E3%82%B0%E3%81%AE%E4%BD%9C%E6%88%90) で作成したサービス・ログをクリックします。

サービス・ログの詳細画面が表示されるので、下にスクロールして**ログの探索**からオブジェクトストレージの読み取りのログデータを確認できます。
例えば、オブジェクトをダウンロードした際のログは赤線で囲まれている箇所に該当します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3742484/95608a1c-e71e-710f-3627-a1aaa9ab655c.png)

# 6. メトリックの確認方法
各サービス・ログのメトリックの確認をします。

OCIのコンソール画面から 監視および管理 -> ログ を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3742484/27d7cb31-59c6-f5d4-7519-6f61855e7831.png)

そして、[ 3. サービス・ログの作成](https://qiita.com/drafts/8cbe48bfd1fac60bfc7a/edit#3-%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9%E3%83%AD%E3%82%B0%E3%81%AE%E4%BD%9C%E6%88%90) で作成したサービス・ログをクリックします。

サービス・ログの詳細画面が表示されるので、下にスクロールして**メトリック**から各メトリックを確認できます。

確認できるメトリックは以下の通りです。
* 取得されたバイト
* 検索成功
* カスタム・ログ受入れ率

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3742484/c8efb8f8-5cd3-c7f8-f303-983a4b232559.png)


# 7. Block Volume のログ取得と確認
Block Volumeの場合は、上記のような手順を踏まずにログを確認することができます。ログを確認する方法は以下を確認してください。

OCIのコンソール画面から 監視および管理 -> 監査 を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3742484/43ba50f2-230f-7ae4-bb1d-2f41a76ab6c4.png)

コンパートメント内の監査のページで**リソース**をあらかじめ作成した Block Volume を選択することで、該当するリソースに関する監査ログを確認することができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3742484/98455ccf-f543-5726-92ab-622a8c2e2a33.png)

また、OCIのコンソール画面から ストレージ -> ブロック・ボリューム を選択すると、ブロック・ボリュームが表示されます。今回の検証で使用するブロック・ボリュームを選択し、詳細画面が表示されるので、下にスクロールし、メトリックを確認することができます。

確認できるメトリックは以下の通りです。
* ボリューム読取りスループット
* ボリューム書込みスループット
* ボリューム読取り操作
* ボリューム書込み操作
* ボリューム・スロットル操作
* ボリュームの保証VPU/GB
* ボリュームの保証IOPS
* ボリュームの保証スループット

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3742484/1ca61f88-3453-7476-b358-4523f4d4ff65.png)


以上が、OCIのストレージサービスのログ取得方法とメトリックの確認方法です。