datadogでインスタンスを見てみる

## datadogとは
SaaSの形式で提供されるITシステムのモニタリングサービスです。
datadogではzabbixと違って手元で構築して管理する必要がありません。

詳しくは下記のリンク先で丁寧に解説してますのでご参照ください。

https://www.skyarch.net/column/datadog/

## 事前準備
sshでログイン可能かつインターネットに出れるEC2インスタンスを用意しておいてください。

## アカウント作成からdatadog-agent導入まで。
今回は個人使用の為、freeプランでやります。
当然ですが相当制限があり、それほど多くの事は出来ません。

`1.Your Account`は氏名やメールアドレスなどを入力するため割愛します。

`2.Your Stack`では何を監視するのかという問いになります。AWSを選択してください。

![01.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1206561/274ba4d4-7afa-12f3-d57e-89761eca6e57.png)

`3.Agent Setup`はdatadog agentの導入手順になります。
左側メニューからAmazon Linuxを選択してください。
![02.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1206561/72a33c78-8abb-76af-9661-47d6ab905c0d.png)

ここで、`①Use our easy one-step install.`の下にあるコマンドをコピーしてください。
このコマンドを事前に用意したEC2インスタンスで実行してください。

```
[ec2-user@ip-10-40-0-10 ~]$ DD_AGENT_MAJOR_VERSION=7 DD_API_KEY=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DD_SITE="datadoghq.com" bash -c "$(curl -L https://s3.amazonaws.com/dd-agent/scripts/install_script.sh)"
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 23766  100 23766    0     0  31436      0 --:--:-- --:--:-- --:--:-- 31394

~snip~


Your Agent is running and functioning properly. It will continue to run in the
background and submit metrics to Datadog.

If you ever want to stop the Agent, run:

    sudo systemctl stop datadog-agent

And to run it again run:

    sudo systemctl start datadog-agent
```

これだけでEC2インスタンスにdatadog agentが導入されます。

```
[ec2-user@ip-10-40-0-10 ~]$ systemctl status datadog-agent
● datadog-agent.service - Datadog Agent
   Loaded: loaded (/usr/lib/systemd/system/datadog-agent.service; enabled; vendor preset: disabled)
   Active: active (running) since Fri 2021-10-22 08:34:16 UTC; 12min ago
 Main PID: 3460 (agent)
   CGroup: /system.slice/datadog-agent.service
           └─3460 /opt/datadog-agent/bin/agent/agent run -p /opt/datadog-agent/run/agent.pid

Oct 22 08:35:43 ip-10-40-0-10.ap-northeast-1.compute.internal agent[3460]: 2021-10-22 08:35:43 UTC | CORE | INFO | (pkg/collector/worker/check_logger.go...eck...
Oct 22 08:35:44 ip-10-40-0-10.ap-northeast-1.compute.internal agent[3460]: 2021-10-22 08:35:44 UTC | CORE | INFO | (pkg/collector/worker/check_logger.go...eck...
Oct 22 08:35:45 ip-10-40-0-10.ap-northeast-1.compute.internal agent[3460]: 2021-10-22 08:35:45 UTC | CORE | INFO | (pkg/collector/worker/check_logger.go...eck...
Oct 22 08:35:50 ip-10-40-0-10.ap-northeast-1.compute.internal agent[3460]: 2021-10-22 08:35:50 UTC | CORE | INFO | (pkg/collector/worker/check_logger.go...eck...
Oct 22 08:35:51 ip-10-40-0-10.ap-northeast-1.compute.internal agent[3460]: 2021-10-22 08:35:51 UTC | CORE | INFO | (pkg/collector/worker/check_logger.go...eck...
Oct 22 08:35:52 ip-10-40-0-10.ap-northeast-1.compute.internal agent[3460]: 2021-10-22 08:35:52 UTC | CORE | INFO | (pkg/collector/worker/check_logger.go...eck...
Oct 22 08:39:17 ip-10-40-0-10.ap-northeast-1.compute.internal agent[3460]: 2021-10-22 08:39:17 UTC | CORE | INFO | (pkg/serializer/serializer.go:371 in ...bytes.
Oct 22 08:39:22 ip-10-40-0-10.ap-northeast-1.compute.internal agent[3460]: 2021-10-22 08:39:22 UTC | CORE | INFO | (pkg/serializer/serializer.go:395 in ...bytes.
Oct 22 08:44:22 ip-10-40-0-10.ap-northeast-1.compute.internal agent[3460]: 2021-10-22 08:44:22 UTC | CORE | INFO | (pkg/serializer/serializer.go:371 in ...bytes.
Oct 22 08:44:22 ip-10-40-0-10.ap-northeast-1.compute.internal agent[3460]: 2021-10-22 08:44:22 UTC | CORE | INFO | (pkg/serializer/serializer.go:395 in ...bytes.
Hint: Some lines were ellipsized, use -l to show in full.
```

また、ページ右下を見ると次に進めるようになっています。
![03.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1206561/4ab3578e-0b6c-c766-1715-267cbd4a5eee.png)

`4.AWS(optional)`はskipで問題ないです。


## datadogでインスタンスを見る
この時点でec2インスタンスにはdatadog-agentが入っており、すぐにでもdatadogから状態を見ることができます。
`Infrastructure`->`Host Map`に移動すると中央にagentをいれたインスタンスが見えます。
![04.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1206561/cc483651-ec5e-2328-1810-249f2e2da506.png)


このホストの詳細情報を見ていくなら`Dashboards`->`Dashboard List`を選択します
![05.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1206561/d5dbe8d2-c97a-59c3-1a39-73ac62d658d4.png)


`Preset Lists`から`All Hosts`を選択するとインスタンスの情報が見えます。
![06.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1206561/e2eea59c-63d6-91a3-98c3-cfdb0f3bc7cb.png)

![08.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1206561/b3c37122-5b84-2597-23bb-e303cd433136.png)

それぞれのグラフをフルスクリーン表示したり、画面右上のペインから表示する時間帯を選択できます。
![12.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1206561/eeb7496d-eb3e-88d3-5a5b-f623ca56b2ba.png)


## Dashboardを作成する
ec2インスタンスの状態をdatadogで確認することが出来ましたが、これはダッシュボードとして登録されているわけではありません。各グラフの編集をしたりレイアウトの変更なども出来ません。

実際に検索窓に対象インスタンスのIDを入れてもhitしません。
![11.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1206561/8d8cde57-5409-324c-dd4d-42aca263ec57.png)

ダッシュボードとして登録する方法は簡単なものであれば画面上部の`Clone Dashboard`を押して
![14.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1206561/2469e815-4fa5-00b8-867b-17ff1b674693.png)
名前とdescriptionを変更(任意)して右下のCloneを押せばダッシュボードとして登録されます。
![15.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1206561/9d15e8f5-1e83-fb5d-5225-270a39e7717b.png)

ダッシュボードとして登録することで、先ほどは出来なかったグラフの編集やレイアウトの変更が可能になります。

`Dashboard list`でも表示されるようになるため、監視対象はダッシュボードとして登録しておくとよいと思います。
![16.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1206561/989e2dc3-5e54-46b5-8952-06a56aa1203e.png)