#可観測性という用語はエンジニアリングの分野に由来しており、近年ソフトウェア開発の分野でますます普及しています。簡単に言えば、可観測性とは、外部出力に基づいてシステムの内部状態を理解する能力です。 IBM は可観測性を次のように定義しています。
## 一般に、可観測性とは、複雑なシステムの内部状態または状態が、その外部出力の知識に基づいて理解できる程度を指します。システムの観察可能性が高ければ高いほど、追加のテストやコーディングを必要とせずに、パフォーマンス問題の根本原因を特定するプロセスがより速く、より正確になります。
クラウド コンピューティングでは、可観測性は、分散アプリケーション システムとその運用をサポートするインフラストラクチャからのデータを集約、相関付け、分析するためのソフトウェア ツールと実践を指します。アプリケーション システムのトラブルシューティングとデバッグをより効果的に行い、カスタマー エクスペリエンスの最適化、サービス レベル アグリーメント (SLA)、およびその他のビジネス目標を達成します。
# IT アーキテクチャが複雑になるにつれて、システム管理とトラブルシューティングもさらに複雑になります。多くのシナリオでは、従来のアプローチでは最適なパフォーマンスを確保するのに十分ではなくなりました。可観測性は、監視の派生であると考えられることがよくあります。監視には、CPU 使用率やネットワーク トラフィックなどの特定のメトリクスの追跡と、それらのメトリクスがしきい値を超えたときにアラートを生成することがよく含まれます。モニタリングには一定の制限がありますが、可観測性には広範囲のデータを収集して分析し、システム動作のより包括的なビューを提供することが含まれます。
ソフトウェア開発において、可観測性とは、ログ、メトリクス、トレース、その他のデータなど、アプリケーションによって生成されたデータに基づいてアプリケーションの動作とパフォーマンスを理解する能力を指します。このデータを分析することで、開発者はアプリケーションのパフォーマンスを理解し、改善の余地がある領域を特定できます。
可観測性の事例プラットフォーム セキュリティは、可観測性の実際的な適用例です。
プラットフォーム セキュリティ チームは、複数のソースから複数の形式で大量のデータを受け取ります。乱雑で低品質のデータを分析すると、脆弱性の検出、新たな脅威の発見、侵害発生時の対応能力が低下します。また、複数のセキュリティツールを導入すると、異なるセキュリティツール間で情報を共有できないという問題も発生します。
解決策は、可観測性フィルターを定義して潜在的なセキュリティ脅威を特定し、分析する受信データの品質を向上させることです。次のステップでは、外部データベースからのサポート データを使用してデータを強化し、セキュリティ脅威の分析と特定に役立てます。DNS 情報から IP アドレス、ユーザー ID まで、あらゆるものを追加できます。
可観測性の利点可観測性の主な利点の 1 つは、開発者がアプリケーションの問題を迅速に特定してトラブルシューティングできることです。アプリケーションによって生成されたテレメトリ データを分析することで、開発者はアプリケーションのパフォーマンスを理解し、パフォーマンスを改善できる方向性を特定できます。これにより、ダウンタイムが削減され、全体的なユーザー エクスペリエンスが向上します。
自動化により、監視と制御の適時性と精度が向上します。同時に、全体的な監視とメンテナンスのコストを削減するのに役立ちます。
可観測性の柱可観測性は、一般に 3 つの柱に基づいて構築されていると考えられています:
ログ多くのプロセスは、アクティビティのログを作成できます。一般に、これらは可観測性に役立ちますが、場合によっては、ログに表示される詳細レベルを上げて有用にするために調整する必要があります。
追跡ログは非常に便利ですが、イベントが発生した理由とその結果を確認するには、前方および後方のトレースも必要です。
メトリクスメトリクスは、異常を測定し、必要に応じて是正措置をトリガーする方法です。簡単に言えば、正常な状態を知り、正常な状態からの逸脱を検出する必要があります。したがって、通常のステータスを定義するインジケーターが必須です。
オブザーバビリティの実装オブザーバビリティは、いくつかの古いツールを使用して実装することもできますが、適用性と適用範囲にいくつかの制限があります。可観測性を実現するには、ログ、トレース、メトリクスという可観測性の 3 つの柱をカバーする技術とツール自体のツールボックスが必要です。
これらのツールを使用すると、管理者、監視者、開発者は、アプリケーション コード、インフラストラクチャ、ユーザーの行動など、さまざまなソースからデータを収集して分析できます。これらのツールを組み合わせて使用すると、システム管理者はシステム全体または単一システムの動作とパフォーマンスを完全に把握できるため、問題をより正確かつ迅速に特定して解決することができます。
最初のステップは、システム全体または個々のシステムのパフォーマンスを測定するツールを導入することです。これらのツールは、システムの動作とパフォーマンスに関するデータを収集するために、ログ、メトリック、トレースをカバーする必要があります。ネットワーク管理システムと制御システムを接続すると、可観測性が向上します。
ダッシュボードをインストールした後、システムによって生成されたデータを収集する必要があります。データの収集には、ロギング フレームワーク、メトリック収集システム、トレース ライブラリなどのツールを使用できます。
各ツールによって提供されるデータを確認し、どのデータが保存されるか、安全に無視されるか、破棄されるかを判断する必要があります。
次のステップは、携帯電話のデータを保存する方法を定義することです。データベースやデータ レイクなどの一元的な場所にデータを保存すると、後でデータのクエリや分析が容易になります。この点でクラウドストレージは非常に便利です。多くの企業は、新しいデータをすぐに利用できる分類システムを使用していますが、履歴データはしばらくオンライン リポジトリに残ります。自動検索システムは、オフラインで保存された古いデータにアクセスできます。
データの定期的なバックアップは、日常の運用手順の一部です。即時ストレージ、オンライン ストレージ、オフライン ストレージの間の境界点を定義する方法は、ビジネス ニーズに応じて異なります。
次に、システムの動作とパフォーマンスを理解するために、収集したデータの分析を開始できます。分析プロセスには、ダッシュボード、アラート システム、機械学習モデルなどのツールの使用が含まれます。
データを即座に分析して、e コマース アプリケーションに対するマーケティング キャンペーンの影響を観察するなど、使用状況の変化を特定して管理できます。過去の傾向を分析することもできます。たとえば、北半球でのカーペットの購入のピークシーズンは通常、秋の 10 月上旬頃です。歴史分析により、ビジネスにおける同様のパターンが明らかになります。
可視化が重要なポイントです。データの表示には、チャートやグラフなどさまざまな形式があります。視覚化は、システム動作の傾向とパターンを特定するのに役立ちます。視覚化ツールは数多くあり、Microsoft Excel でもこのプロセスを完了できます。
全体として、可観測性を実現するには、システムの動作とパフォーマンスを全体的かつ詳細なレベルで理解できるようにするツール、プロセス、ベスト プラクティスの組み合わせが必要です。これにより、企業および部門の意思決定者が問題をより迅速に特定し、解決できるようになります。
# 可観測性は、開発者がアプリケーションの動作とパフォーマンスについて洞察を得るのに役立つ強力な概念です。テレメトリ データを収集して分析することで、開発者は問題を迅速に特定して解決できるため、全体的なユーザー エクスペリエンスが向上し、ダウンタイムが削減されます。
以上が可観測性とは何ですか?初心者が知っておくべきことすべての詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。