問題タブ [opencensus]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Spring Actuator Controller エンドポイントはどこにありますか? jvm 呼び出しを使用してプログラムで呼び出すことができますか?
Spring Actuator エンドポイント ( ) を提供する実際の Java クラスを見つけたいと考えています/actuator
。
ある意味この質問に似ていますが、その人はネットワーク HTTP 呼び出し経由で呼び出したいと考えていました。理想的には、HTTP 接続をセットアップするコストを節約するために、JVM 内で呼び出すことができます。
これは、システムに 2 つのメトリクス フレームワークがあるためです。OpenCensus 上に構築されたレガシー メトリクス フレームワークがあり、Spring Actuator (Micrometer に基づく Prometheus メトリクス) に移行しました。Springの方が優れていると思いますが、私の会社が古いものを中心にインフラストラクチャをどれだけ構築したかはわかりませんでした。たとえば、OpenCensus を使用する内部ライブラリを活用しています。インフラ チームは、アプリの Opencensus ベースの指標に依存しています。そのため、両方のメトリック セットをマージしてレポートすることを試みます。
Opencensus のエンドポイントと Actuator のエンドポイントからデータを取得する独自のメトリクス エンドポイントを作成したいと考えています。それぞれに HTTP 呼び出しを行うこともできますが、リソースを節約し、待ち時間を短縮するために、JVM 内で呼び出したいと思います。
あるいは、私の考えが間違っているのかもしれません。MeterRegistry.forEachMeter()
エンドポイントで単に使用する必要がありますか? いずれにせよ、Spring Actuator エンドポイントを見つけたら、直接呼び出さなくても、彼らがどのようにそれを行っているかの例を見て、実装を模倣できると思いました。
おまけ: エンドポイントにサービスを提供する Opencensus ハンドラーも追跡する必要があり、おそらく別の記事を作成する予定ですが、それに対する答えも知っている場合は、共有してください!
logging - opencensus Azure ハンドラーは、Azure 関数アプリで重複したログを作成します
私がやりたいことは、Azure 関数アプリで opencensus-azure ハンドラーを使用しようとすることです。
環境:
- Win10
- パイソン3.7
サンプルコードは次のとおりです。
関数をトリガーした後、アプリケーション インサイトで結果を確認します。
ここに私を混乱させるいくつかのポイントがあります:
- 「DEBUG」よりも高いログ レベルのログ メッセージが 3 回繰り返されます。それ以外は2回。
- グローバル スコープの print() も 2 回繰り返されます
さらに、ログハンドラーをチェックしようとします。ハンドラーは 1 つだけ存在します。
[<AzureLogHandler (NOTSET)>]
次に、コードを Azure 関数アプリにデプロイします。ログは次のとおりです。
いくつかの点に注意する必要があります:
- 「DEBUG」よりも高いログ レベルのロギング メッセージが 2 回繰り返されます。それ以外の場合は表示されません。
- グローバルのprint()は1回しか表示されません(予想どおり)
詳細を調べて、同じログ メッセージでログ エントリの customDimension を確認します。
これは、自動生成されたコンテンツを示しています。
これlog_extra
は私のコードを示しています:
すべての重複を削除する方法について何か提案はありますか?
これらの状況が引き起こした理由は?