📌オブザーバビリティ(Observability)とは?

<aside> 💡

🌟簡単に言うと”予期せぬトラブルを防ぐ仕組み”

オブザーブ(Observe):「観測する」と、

アビリティ(Ability):「能力」を組み合わせた複合語

⇒「可観測性」or「観測する能力」

🌟システム上で何らかの異常が起こった際に、それを通知するだけでなく、どこで何が起こったのか、なぜ起こったのかを把握する能力

⇒つまり、、、

エラーという結果だけでなく、そこに至るまでの道筋を逆にたどって、

どこにトラブルの原因があるのかを探り出す

</aside>

📌監視ツールとの違い

特徴 監視 オブザーバビリティ
目的 システムの 状態を把握 システム内部の 動作や原因の特定・分析
焦点 メトリクスとログの収集 内部状態の把握と複数のデータソース から得られる情報を統合・分析
アプローチ 事前に定義した閾値や正常・異常状態に基づき以上を検出 未知の課題や障害の原因 を特定・解決
適用環境 静的で安定したインフラストラクチャ(シンプルなシステム) 複雑なシステム、動的なクラウドネイティブ環境

※従来の監視ツールが「何が起きたか?」を提供するのに対し、オブザーバビリティツールは「なぜそれが起きたのか?を解明する機能」を提供している

📌オブザーバビリティ代表ツールNew Relicとは

🌟アプリケーションとインフラのパフォーマンスをリアルタイムで監視するための「オールインワンオブザーバビリティプラットフォーム」 主な機能

基本機能 モニタ内容
New Relic APM データベース、外部サービス、エラー、スループット、CPU/メモリ使用率の監視
New Relic infrastructure CPU、メモリ、ディスク、ネットワーク使用率の監視
New Relic browser ページビュー、ユーザー行動、Javascriptエラー、AJAXリクエストの分析
New Relic mobile モバイルアプリのパフォーマンス、HTTPレスポンス、セッション状況の可視化
New Relic synthetics Webサイト/アプリ/APIの稼働状況・応答時間のテスト
その他 ログ管理、Kubernetes監視、サーバレス監視、アラート設定、脆弱性情報収集など

📌EC2をNew Relicで監視してみる

目的

New Relicを自分の環境に取り入れてみてコンソールに触れてみる

手順

$ curl -Ls <https://download.newrelic.com/install/newrelic-cli/scripts/install.sh> | bash && sudo NEW_RELIC_API_KEY=HOGEHOGEHOGE NEW_RELIC_ACCOUNT_ID=XXXXXXX /usr/local/bin/newrelic install
# New RelicCLI(newrelicコマンド)をインストール
# 環境変数NEW_RELIC_API_KEYとNEW_RELIC_ACCOUNT_IDを設定
# そのうえで/usr/local/bin/newrelic installを実行

CloudWatch Metric Streamsとは?