チュートリアル: NodeJSアプリケーションでGitLab可観測性を使用する
この機能の利用可否は、機能フラグによって制御されます。
このチュートリアルでは、GitLab GitLab可観測性の機能を使用して、NodeJSアプリケーションを構成、計測、監視する方法を学びます。
はじめる前
以下のものがあることを確認してください:
- GitLab.comまたはSelf-ManagedインスタンスのGitLab Ultimateサブスクリプション
- NodeJSのローカルインストール
- Git、NodeJS、JavaScript、およびOpenTelemetryのコアコンセプトに関する基本的な知識
新しいGitLabプロジェクトを作成します
まず、新しいGitLabプロジェクトと対応するアクセストークンを作成します。このチュートリアルでは、プロジェクト名nodejs-O11y-tutorialを使用します。
- 左側のサイドバーの上部で、新規作成( )を選択し、新規プロジェクト/リポジトリを選択します。
- テンプレートから作成を選択します。
- NodeJS Expressのテンプレートを使用を選択します。
- プロジェクトの詳細を入力してください。
- プロジェクト名フィールドに、
nodejs-O11y-tutorialを入力します。
- プロジェクト名フィールドに、
- プロジェクトを作成を選択します。
nodejs-O11y-tutorialプロジェクトの左側のサイドバーで、設定 > アクセストークンを選択します。apiスコープとデベロッパーロールでアクセストークンを作成します。トークンの値は後で必要になるため、安全な場所に保管してください。
NodeJSアプリケーションをインストルメント化する
次に、NodeJSアプリケーションをインストルメント化する必要があります。
以下を実行して、NodeJSがインストールされていることを確認します:
node -vnodejs-O11y-tutorialプロジェクトをクローンし、cdnodejs-O11y-tutorialディレクトリに移動します。以下を実行して依存関係をインストールします:
npm installアプリケーションを実行します:
PORT=8080 node server.jsWebブラウザで
http://localhost:8080にアクセスし、アプリケーションが正しく実行されていることを確認します。OpenTelemetryパッケージを追加します:
npm install --save @opentelemetry/api \ @opentelemetry/auto-instrumentations-nodeプロジェクトIDを見つけます:
nodejs-O11y-tutorialプロジェクトの概要ページの右上隅で、アクション( )を選択します。- Copy project ID(プロジェクトIDをコピー)を選択します。コピーしたIDを後で使用するために保存します。
インストルメンテーションを使用してプロジェクトを構成し、実行します:
env OTEL_TRACES_EXPORTER="otlphttp" \ OTEL_EXPORTER_OTLP_ENDPOINT="https://gitlab.com/api/v4/projects/{{PROJECT_ID}}/observability" \ OTEL_EXPORTER_OTLP_HEADERS="PRIVATE-TOKEN={{ACCESS_TOKEN}}" \ OTEL_SERVICE_NAME="nodejs-O11y-tutorial" \ OTEL_LOG_LEVEL="debug" \ NODE_OPTIONS="--require @opentelemetry/auto-instrumentations-node/register" \ PORT=8080 node server.jsPROJECT_IDとACCESS_TOKENを、先ほど取得した値に置き換えてください。GitLab Self-Managedインスタンスを使用している場合は、gitlab.comをGitLab Self-Managedインスタンスのホスト名に置き換えます。
トレースを表示
可観測性トレーシングを使用するように構成されたアプリケーションがあるので、GitLab.comでエクスポートされたトレースを表示できます。
エクスポートされたトレースを表示するには:
インストルメンテーションを使用して、
nodejs-O11y-tutorialアプリケーションを再度起動します。http://localhost:8080/にアクセスし、アプリケーションでいくつかのアクションを実行します。nodejs-O11y-tutorialプロジェクトの左側のサイドバーで、モニタリング > トレースを選択します。すべてが正しく動作している場合は、リクエストごとにトレースが表示されます。オプション。トレースを選択して、そのスパンを表示します。
おつかれさまでした。アプリケーションが正常に作成され、GitLab可観測性の機能を使用するように構成され、アプリケーションが作成したトレースが検証されました。このアプリケーションで実験を継続するか、より複雑なアプリケーションを構成してトレースをエクスポートしてみてください。
可観測性トレーシングはまだ本番環境での使用に対応していません。NodeJSアプリケーションでOpenTelemetryコレクターを使用して、ログまたはメトリクスの公式サポートはありません。

