Let's try 外形監視!! -リンク切れチェック編-

Webサイト内のリンクが気づかない間に切れていた！なんてことありませんか？
チェックを手動で行うのは大変なので自動で定期的にチェックしてリンク切れてたらアラート届くのが理想ですよね！？
そんな時に使える New Relic Synthetic の Broken Link Monitor をご紹介したいと思います！

## Broken Link Monitor で できること
New Relic Synthetic の Broken Link Monitor は指定したURL内のページ上にあるすべてのリンクが成功するかどうかをテストするモニターです
リンク切れが検出された場合にアラートを送信するよう設定したり、原因となるリンクを確認したりすることが可能です
設定も簡単なので、特に重要なトップページやキャンペーンのページなどを登録し、自動チェックできるようにしてサイト運営を簡略化しましょう

## Broken Link Monitor の設定方法
実際にNew Relic上で設定してみましょう

(1)Synthetic Monitor をクリック

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/313446/f0cbc752-dc50-5492-8c31-2a7b62767b84.png" width=50%>

(2)Monitor -> Create monitor をクリック

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/313446/4562498b-cd0f-b236-60b4-b2f2d2560670.png" width=80%>

(3)Page link crawler -Broken Links Monitor-をクリック

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/313446/dfee3ab7-8c87-abeb-9e24-6a6d6323c5eb.png" width=80%>

(4)モニター名やチェック対象となるドメイン、期限よりどれくらい前に通知を行いたいかを指定して Select locationsをクリック
必要に応じてチェック期間(Period)やApdexの目標値などのオプション設定を追加する事も可能です

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/313446/d5a988ce-0378-8fe5-1d74-d8c8a36a8ba6.png" width=80%>

(5)チェックを行うロケーションを選択し「Save monitor」をクリック
ロケーションはグローバルに用意された場所から複数選択することが可能です。
社内システムなどインターネットに直接アクセスできないクローズドな環境で実行したい場合にも、プライベートロケーションにJob Managerを置くことでチェックが可能です(Job Managerに関しては別記事で紹介します)

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/313446/9ddf9a4a-391c-f90d-fe78-bf247834538b.png" width=80%>

これだけの設定でしばらくするとチェック結果が表示されるようになります！！
簡単！！

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/313446/d2a90108-958f-4d62-6922-b8a7388a303a.png" width=80%>


もしリンク切れがあれば、チェックが「失敗」になるのですぐにわかるようになっています
わかりやすい！

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/313446/78310e72-ae8d-d341-a82b-b3662e7032bf.png" width=80%>


## 結果を確認
作成したモニターはしばらくすると結果を確認することができるようになります

Resultsでは実行結果の推移を見ることができます。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/313446/76080b54-7595-3445-c9eb-c1e6d66456eb.png" width=80%>

それぞれの実行の詳細を見る場合には、timestampのリンクをクリックします。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/313446/fcea1d69-3b12-7d24-cb01-133489d7432d.png" width=80%>

詳細では読み込まれたリソース毎の読み込み時間とそのタイムラインを確認することが可能です
これを見ることでどこで読み込まれたリンクでエラーになっているのかを確認できます

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/313446/02c61610-e039-d0c7-75c4-ae878c90e81e.jpeg" width=80%>

「Script Log」をクリックすると、読み込み結果のログを確認することが可能です

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/313446/6626688e-2d9b-9536-5216-ea4efb55d147.png" width=80%>

リンク切れがあった場合、Errorでフィルターをかけることで、どのリンクが原因になっているのかを即座に把握することができるようになります
修正が必要なリンクを探すのにとても便利！
※ちなみにリンクはコメントアウトしていてもチェック対象となります

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/313446/d3d75a3d-c598-a694-4995-cf56b12b1e1f.png" width=80%>

Resources では各リソース毎の平均ダウンロード時間と平均サイズ毎にSortして確認することが可能です

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/313446/16eb1e7b-18ae-6c78-778f-b409395eaaa4.png" width=80%>

対象リソースをクリックしドリルダウンしていくと、HTTPステータスコード、 タイミング情報 など、詳細なメトリクスを見ることができます。
リンク切れだけではなく、ページの詳細も併せて確認できるので、ページのリソース読み込みを改善させてるためにも使えたりもします
便利！

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/313446/db7cf0f2-dbf9-9c73-5f14-e3b59d435c90.png" width=80%>



## 補足
New Relicでは契約しているプランによって、Synthetic checkの実行可能上限が異なります。
上限についての詳細やチェックのカウント方法に関する詳細に関しては、[こちら](https://qiita.com/ume67026265/items/02e602b8af21078366f9#synthetic-%E3%81%AE%E5%AE%9F%E8%A1%8C%E5%9B%9E%E6%95%B0%E3%82%AB%E3%82%A6%E3%83%B3%E3%83%88)の記事をご確認ください

## まとめ
わざわざ自分たちでサーバを立てたり手動で確認しなくても、Syntheticを活用することでさまざまな拠点から定期的にチェックできるのはとても便利です！
設定も簡単なので是非SyntheticのBroken Link Monitorをご活用ください！

:::note info
無料のアカウントで試してみよう！
[New Relic フリープランで始めるオブザーバビリティ！](https://qiita.com/ktst79/items/5ee74b34e6adb8a7a6fa)
:::
:::note info
[New Relic株式会社のQiita Organization](https://qiita.com/organizations/newrelic)では、
新機能を含む活用方法を公開していますので、ぜひフォローをお願いします。
:::

New Relic株式会社のAdvent Calendar 2024では、New Relicを使い始められたばかりの方、すでに熟達されているの方の活用Tips、アイディアまで、New Relicに関する知見を幅広く募集しています!

https://qiita.com/advent-calendar/2024/newrelic