2017-09-11 16 views
0

誰も私はOpenStackの中でサービスをトレースするZipkinを使用しようとしていますトレースOpenStackのとosprofiler例をzipkin

。私はそれが私にとって大きなプロジェクトであることを知っています。ですから、ZipkinがOpenStackをトレースするためのオープンソースライブラリがあるのだろうかと思います。

私はそれを前に検索したと思うし、私の心が私を欺いていないと、これについて1つのプレゼンテーション(スライスのみ)があります。しかし、私はそれを見つけることができません。誰かがそれを手伝うことができますか?

OpenStackをトレースするためのライブラリosprofilerがありますが、APIの例はわかりません。もっと詳細な、あるいは完全な例を教えてください。おそらくジプキンのようです。https://github.com/openzipkin/pyramid_zipkin-example

私はそれが役に立たないとは限りません。 OpenStackでRESTfulなリクエストポイントを見つけなければならないようです。たとえば、インスタンスを作成すると中性子にネットワーキングをリクエストするサービスが起動し、フロントエンドコードを見つけてトレースコードを追加する必要があります。 py_zipkinを使用している場合は、前にデコレータ@zipkin_span(いくつかのパラメータ)を追加できます。問題はノヴァ、中性子、シンデレラなどのようなサービスのフロントエンドを見つけるのは難しいことです。

osprofilerと同じことをするようです。私の理解は間違っている可能性が高く、誰が助けてくれるのでしょうか。

ところで、私はOpenStackのような大きなプロジェクトをトレースするつもりはありません。分析する情報を収集するために、私はZipkinでRESTfulまたはRPCシステムをトレースするつもりです。残念ながら、私は中規模のオープンソースプロジェクトを発見しました。だから私はOpenStackを選択します。あなたが私に何か他のものを提供できるなら、それは非常に役に立ちます。 :)

ありがとうございました。

答えて

1

OpenStackプロジェクトをトレースする最善の方法は、Osprofilerライブラリを使用することです。ワークフローを理解したい場合や、OpenStack内で行われている呼び出しの種類について知りたい場合は、Osprofilerがトレースを取得する最も簡単な方法です。現在、OsprofilerはOpenStackの受け入れられたプロジェクトであり、OpenStackのトレースを取得するための公式プロジェクトです。

osprofilerは、OpenStack(Nova、Neutron、Keystone、Glanceなど)のすべての主要プロジェクトに統合されています。 OpenStackの各プロジェクトの設定ファイルでosprofilerを有効にして、特定のプロジェクトのトレースを取得するだけです。

あなたは、このリンクを介して行くことができる - コンフィギュレーションファイルにOsprofilerの有効https://docs.openstack.org/osprofiler/latest/

は、設定ファイル(nova.confまたはneutron.conf)の末尾に以下の行を追加することによって行うことができます。

[profiler] 
enabled = True 
trace_sqlalchemy = True 
hmac_keys = SECRET_KEY 
connection_string = messaging:// 

connection_stringパラメータは、コレクタ(トレース情報が格納されている場所)を示します。デフォルトではCeilometerが使用されます。 実際には、confファイル内のconnection_stringパラメータをelasticsearchサーバに変更することによって、トレース情報をElasticsearchのような他のコレクタにリダイレクトすることができます。

これは、最小限の労力でOpenStackでトレースを取得するのがはるかに簡単な方法です。

+0

ありがとうございます。実際には、私はすでに他の問題に遭遇しながらそれを行っています。私はそれらに対処しようとしています。 – Yuan

関連する問題