ServicePulse は、分散アプリケーションのリアルタイムの運用監視を提供します。システムのエンドポイントの健全性を監視し、処理エラーを検出し、再処理のために失敗したメッセージを送信し、特定の環境のニーズが満たされていることをすべて 1 つの統合ダッシュボードで確認します。
ServicePulse は、分散システムを構築、監視、デバッグするための NServiceBus とツールを含む特定サービス プラットフォームの一部です。
詳細については、ServicePulse のドキュメントを参照してください。
ServicePulse は主に、ServiceControl インスタンスと ServiceControl Monitoring インスタンスによって提供されるデータを表示します。
両方のサービスの URL はsrc/Frontend/public/js/app.constants.js
で設定できます。
ServicePulse は、npm と Bower をパッケージ マネージャーとして使用します。ソリューションが機能するには、ServicePulse Web サイトを起動する前に依存関係をダウンロードする必要があります。
次の依存関係をまだインストールしていない場合は、インストールします。
ci.yml
およびrelease.yml
ワークフローのnode.jsバージョンがローカル環境のバージョンと一致していることを確認することをお勧めします。ステップname: Set up Node.js
Visual Studio または Rider はフロントエンド開発には適切な IDE であるように見えますが、最新のフロントエンド フレームワーク、lint、およびフォーマットでは信頼性が低くなる傾向があります。そのため、フロントエンド開発でさらに成功するために役立つ追加の推奨事項を用意しています。
ServicePulsesrcFrontend
に移動し、次の操作を行います。
npm install
実行して、npm の依存関係をすべてインストールします。npm run dev
(これにより、ポート 5173 で開発サーバーがホストされ、 /Frontend
ディレクトリ内の変更の監視が開始されます) git サブモジュールが正しく構成されていないことに関連するエラーでnpm run dev
失敗した場合は、 npm install
コマンドを再度実行して、必要な依存関係がすべて利用可能であることを確認してから、 npm run dev
実行します。
上記の手順を実行した後、Vue.js アプリケーションの実行によって表示される URL に移動して、ServicePulse アプリケーションを表示します。
フロントエンドの自動テストは、テスト フレームワークおよびテスト ユーティリティのテスト ライブラリとして Vitest を利用します。 Vitest は、デフォルトで開発環境のwatch mode
と CI 環境のrun mode
2 つのモードを提供します。 Watch mode
ファイルの保存時に関連するテストが即座に再実行され、開発中に即座にフィードバックが提供されます。
テストを実行する前に、開発サーバーがセットアップされていることを確認してください。 ServicePulsesrcFrontend
に移動し、 npm install
実行して、npm の依存関係をすべてインストールします。
ServicePulsesrcFrontend
に移動し、次を実行します。
npm run test:component
このコマンドはServicePulsesrcFrontendsrc
ディレクトリとそのサブディレクトリにあるすべてのコンポーネント テスト ファイル*.spcs.ts
を実行します。 watch mode
を有効にすると、ファイルの保存時に関連するテストのみが再実行されるため、効率的なテスト開発が可能になります。
ServicePulsesrcFrontend
に移動し、次を実行します。
npm run test:application
コンポーネント テストと同様に、このコマンドはディレクトリServicePulsesrcFrontendtest
とそのサブディレクトリにあるすべてのアプリケーション テスト ファイル*.spcs.ts
を実行します。
ServicePulsesrcFrontend
に移動し、次を実行します。
npm run test:coverage
このコマンドは、テストの対象となるステートメント、分岐、関数、および行の割合を示すレポートを生成します。さらに、カバーされていない行番号も識別します。
dev
- ソースファイルのホットリロードを行う開発サーバーを起動するvite
を実行します。build
- ファイルを..app
フォルダーに出力するビルド スクリプトを実行します。lint
- eslint を使用してすべての vue、ts、および js ファイルをチェックしますtype-check
- TypeScript を非出力モードで実行しますtest:application
- Frontend/test
フォルダーにあるすべてのアプリケーション テストを実行します。test:component
- Frontend/src
フォルダーとサブディレクトリにあるすべてのコンポーネント テストを実行します。test:coverage
- vitest.config.ts
で定義されたファイルに対してテスト カバレッジ レポートを実行します。 ServicePulse.Host.exe
を介して ServicePulse を直接実行することができます。
ServicePulse.Host.exe は自己ホスト型 Web サーバーに依存します。プロジェクトを実行する前に、URL ACL 予約を設定する必要があります。管理者権限で Visual Studio を実行するか、次のコマンドを実行して必要な URL ACL 予約を追加します。
add urlacl url=URL
ここで、 URL
ローカル マシン上で構成された URL です。
コマンドラインからビルドスクリプトを実行します。
PowerShell -File .build.ps1
注記
Set-ExecutionPolicy Unrestricted -scope UserPolicy
を使用して PowerShell 実行ポリシーを変更する必要がある場合があります。
ServicePulse.Host.exe
を実行するIDE でServicePulse.Host
プロジェクトをビルドして実行します。
ServicePulse は、次のデスクトップ ブラウザのバージョンでサポートされています。
ServicePulse の Dockerfile は、 src/ServicePulse
フォルダー内にあります。コンテナー イメージはすべて、リリース ワークフローの一部として構築され、Github Container Registry にステージングされます。 PR を持つブランチの場合、イメージには PR 番号 (例: pr-1234
がタグ付けされます。