ホームページ >バックエンド開発 >Golang >go-sdk を使用してメトリクスを Opentelemetry にプッシュする方法

go-sdk を使用してメトリクスを Opentelemetry にプッシュする方法

王林
王林転載
2024-02-08 23:42:321125ブラウズ

如何使用 go-sdk 将指标推送到 Opentelemetry

php 編集者の Xigua が、go-sdk を使用してインジケーターを Opentelemetry にプッシュする方法を紹介します。 Opentelemetry は、開発者がアプリケーション メトリック データを収集および分析するのに役立つオープン ソースの観察フレームワークです。 go-sdk を使用すると、カスタム メトリクスを Opentelemetry に簡単にプッシュし、ダッシュボードを通じて視覚化して監視できます。この記事では、go-sdk のインストールと構成のプロセスを詳しく紹介し、インジケーター データを Opentelemetry にプッシュするコードの作成方法と、いくつかの実用的な例とベスト プラクティスを示します。初心者でも経験豊富な開発者でも、この記事から有益な情報とガイダンスを得ることができ、go-sdk をより効果的に使用してインジケーター データを Opentelemetry にプッシュするのに役立ちます。

質問内容

go-sdkを使ってメトリクスをopentelemetryにプッシュしようとしたのですが、それに関するドキュメントが見つかりませんでした。これまでのところ、このコードを使用してみましたが、次のステップが何になるのかわかりません。正直に言うと、プロバイダーとリーダーのことで少し混乱しています。監視は初めてです。

リーリー

私がこれまでに持っているソース情報は、ここの例とここの例からのものです

回避策

まず、OTel Go Metrics API と SDK は現在不安定であると考えられていることに注意してください。 OpenTelemetry メトリクス仕様が時代遅れにならないように、安定した OpenTelemetry メトリクス仕様に含まれる高レベルの項目に焦点を当てて回答しようと思います。以下の Go 固有のコンテンツは変更される可能性があります。

2 つの異なるタイプのエクスポーターをセットアップしようとしているようです。 Prometheus エクスポーターは Prometheus によってスクレイピングされ、otelmetricgrpc エクスポーターは、OTLP 経由でメトリクスを OpenTelemetry Collector などのシンクにプッシュする接続を作成します。両方ではなく、どちらか一方のみが必要な場合があります。リンクした最初の例は、実際にはメトリクスではなく追跡のみを目的としていますが、原理はほぼ同じです。

OpenTelemetry SDK のメトリックのエントリ ポイントは、メーター プロバイダー です。計測器プロバイダーは、メトリック関連の構成、集計、およびデータのエクスポートを処理します。これは、ユーザーが meters を取得する方法でもあります。通常、各コード モジュールには独自のインストルメンテーションがあります。このインスツルメンテーション メトリックに基づいて作成し、これらのメトリックに基づいてデータ ポイントを記録します。すべての指標ポイントは集約され、計測プロバイダーを通じて戻されます。

メータープロバイダーからメトリクスを読み取るには、何らかの種類の メトリクスリーダー が必要です。 OTLP などのプロトコルを使用してメトリクスをプッシュしようとしている場合は、定期的に測定プロバイダーからメトリクスを収集し、エクスポーターを使用してエクスポートする、Periodic Export Metrics Reader などのツールを使用できます。

プルベースのメトリクス システム (Prometheus など) を使用しようとしている場合、エクスポータはメトリクス リーダーのように動作し、メトリクス システムがクロール エンドポイントを要求するたびにメトリクスを読み取ります。これは、リンクした 2 番目の例で行われていることです。 serveMetrics この関数は、ポート 2223 でリッスンする Web サーバーを開き、localhost:2223/metrics へのリクエストを処理します。 GET リクエストがこのエンドポイントに届くたびに、インストルメンテーション プロバイダーに基づいて集計されたメトリクスが構成され、応答本文で返されます。これにより、Prometheus などのシステムがアプリケーションから定期的にメトリクスを要求できるようになります。

以上がgo-sdk を使用してメトリクスを Opentelemetry にプッシュする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。