Datadogの無料トライアルを利用して監視設定してみた

今回の環境はAmazonLinux2です。
セッションマネージャにて接続し、コマンドを実行しています。
# Datadog-Agentをインストールする

DatadogAgentをインストールするにあたり、Datadogの無料トライアルを開始する際に自身のAPIキーが発行されますので、そのコマンドを入力してください。
DatadogAgentのYUMパッケージをインストールすることができるようです。


パッケージのインストールが正常に終了すると下記画像のように出力されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2230506/65a2468a-6e69-ce71-5b78-93cdc600e125.png)

※注意
Amazon Linux 2022 インストールの場合はlibxcrypt-compat パッケージが必要なため、下記コマンドを実行してください。
```
dnf install -y libxcrypt-compat
```

ここまで完了すると、datadog-agentのステータスは起動中となっています。
コマンドについては公式に一覧がありますので、以下をご確認ください。
https://docs.datadoghq.com/ja/agent/basic_agent_usage/amazonlinux/?tab=agentv6v7

# Datadogの無料トライアルを利用してみる
無料トライアルの登録にあたり、メールアドレスの登録等が必要になります。
指示通りに登録を進めていくと、パーソナルダッシュボードが作成されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2230506/c6322604-a91e-9f06-cc23-28b607d12411.png)

今回はCloudProviderとしてAWSを連携させてみようと思います。
＋Add を押下し、AWSアカウントを登録させます。

今回はAutomarically using CloudFormation RECOMMENDEDを選択し、下記画像の通り設定します。
3,4については、デフォルトの設定のままにしていますが、お好みに合わせて変更してください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2230506/b861e995-ff0c-bffa-6b8e-f84e7dd4d586.png)

テンプレートを起動するとAWSアカウントのCloudFormationページに遷移します。
(ログインしていない方はログイン情報を求められます。)

設定項目については、今回は特段変更せず、テンプレートを起動します。

作成に失敗しました。
何故でしょう。一旦スタックを削除してください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2230506/c62aa49d-f56b-e21c-99cf-8bf813fb1c0b.png)

もう一度やり直してみます。
以下の2項目にチェックマークをつけ忘れていました。
チェックを付けたうえで、再度テンプレートを起動してみます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2230506/12f6534f-1082-a59d-c0ef-7f2c45b35a93.png)

少し時間はかかりましたが、CREATE_COMPLETEとなりました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2230506/1bc2c83a-1aa8-2163-c4ce-5a839980e455.png)

では続いてダッシュボードを作成してみましょう。
(ちなみに進捗については、ダッシュボード左上のGet Startedを展開すると表示されます。)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2230506/3b180d9b-872e-49fc-1446-2f27273ad591.png)

CreateNewDashboardからオリジナルなダッシュボードを作成することができます。
下記画像の赤枠から、追加したいダッシュボードを選択し、ダッシュボードを作成します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2230506/d66fc65c-92b8-17d8-42a0-ed495a394bba.png)

ダッシュボードの作成が完了したら続いてモニターを作成してみましょう。
NewMonitorを選択します。

モニターの値としては様々なものを設定できますが
今回は、5分間当たりのロードアベレージの負荷が10を超えると
指定のメールにアラートが飛ぶように設定しました。

(ちなみにSlackのワークスペースを決めて、特定のチャンネルに通知する設定も簡単にできます。)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2230506/0252c651-8ef7-9e98-ebbc-e49316951f27.png)


今回はSeverityを特段設定していないので、全てを通知するにしていますが
Severityごとに通知先(通知チャンネルを変えることも可能のようです。これは運用する側からするとありがたい。)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2230506/848edbd8-5cdc-2765-ea96-ddefda7087a3.png)

インシデント発生後にポストモーテムを残すことも可能です。
この記録を丁寧に残している組織は運用の品質が上がりそうです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2230506/c17f96e0-5930-b044-a731-3183af8adc04.png)

Datadogのアカウント権限については、追加したいメンバーのメールアドレスを登録し、そこに何のロールを追加するか決められます。
今回は3名のメンバーを登録し、それぞれにreadonlyロールを付与しました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2230506/17786fcf-0126-2950-d2f1-f077b322168e.png)

# 負荷テストしてみます
それでは、実際に負荷がかかった際にどのような挙動が発生するのかテストしてみます。
今回はstressコマンドより、CPUに負荷を与え続けDatadogコンソール上でどのように表示/通知されるか見てみます。
(本当はFIS使いたかったんですが、トラブルシューティングに時間がかかりそうでひとまずStressコマンド。いずれFISでも検証します。)

メールとSlackそれぞれに通知を飛ばしてみました。
(Slackだと以下のような感じで通知されます。)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2230506/386d1d72-e682-f777-cf07-b5f8df021322.png)

他にも細かい設定をすれば欲しいログは取れますし、何より視認性の良いSaaS監視ツールだなという印象を受けました。

# ちなみに料金体系についてはこちら
https://www.datadoghq.com/ja/pricing/

今回は、ここまでにします。
また、検証する機会があれば随時編集していければと思います。