Microsoft SQL Server のモニター
「 Instana 」エージェントをインストールすると、「 Microsoft SQL Server 」センサーが自動的に展開およびインストールされます。
サポート情報
Microsoft SQL Server センサーが現在の環境と互換性があるかどうかを確認するには、以下のサポート情報セクションをご確認ください:
サポート対象のオペレーティング・システム
このセンサーは、以下のオペレーティングシステムに対応しています:
- Windows
- Linux
対応バージョンとサポート方針
このセンサーは、以下のバージョンの Microsoft SQL Server に対応しています:
- SQL Server 2016年
- SQL Server 2017年
- SQL Server 2019年
- SQL Server 2022年
また、このセンサーは、高可用性および災害復旧構成向けに、 Microsoft SQL Server のAlways On可用性グループ(AG)の監視にも対応しています。
以下の表は、最新のサポート対象バージョンとサポート方針を示しています:
| テクノロジー | サポート・ポリシー | 最新技術バージョン | サポートされる最新バージョン |
|---|---|---|---|
| Microsoft SQL Server | 45 日間 | 2025 | 2025 |
サポートポリシーに関する詳細については、 「センサーのサポート戦略」 を参照してください。
クライアントサイドのトレースに対応
この技術において、 Instana は以下の言語およびランタイムのクライアントサイドトレースをサポートしています:
MS SQL Server センサーの設定
Instana MS SQLセンサーのローカルおよびリモート監視の両方をサポートしています。
ローカル
「 Instana 」ホストエージェントは、「 Microsoft SQL Server 」がインストールされているのと同じシステムにインストールする必要があります。 Windows に Instana ホストエージェントをインストールするには、「 Windows へのホストエージェントのインストール」 のトピックを参照してください。 Linux に Instana ホストエージェントをインストールするには、「 Linux へのホストエージェントのインストール」 のトピックを参照してください。
Instana エージェントのインストール後、MS SQL Server センサーはデフォルトで有効になります。 Instana エージェントが SQL Server に接続する方法は、次のように選択できます:
SQL Server 認証:以下の設定例のように、エージェント
*instanaAgentDir*/etc/instana/configuration.yamlの設定ファイルにインスタンス、ユーザー名、パスワード、およびポート(平文)を指定すると、エージェントは SQL Server 認証を使用して SQL Server に接続します:注: ローカル監視センサーの設計が更新され、 SQL Server 認証を使用する複数のデータベースインスタンスに対応するようになりました。 その結果、すべてのローカル監視設定は、`<monitoring>` タグlocalの下で定義する必要があります。 ただし、この設計は、引き続きサポートされる単一のデータベース・インスタンスを監視するための既存の構成との互換性を維持しています。com.instana.plugin.mssql: local: # multiple configurations supported - instance: 'MSSQLSERVER' # instance name of MsSQL Server user: 'mssql' password: 'password' port: '1433' poll_rate: 60 # seconds. top_queries_poll_rate: 120 # seconds.Windows 認証:エージェント設定ファイルの設定セクションをコメントアウトしたままにするか、ユーザー名とパスワードを空欄のままにすると、エージェントは Windows 認証を使用して接続を試みます。 Windows 認証を使用する場合、エージェントは実行されている環境の認証情報を使用して認証を行います。
poll_rate: ポーリング・レートを指定します。 デフォルトでは、この値は 1 秒です。top_queries_poll_rate: 上位の照会のポーリング率を指定します。 デフォルトでは、この値は 60 秒です。Windows 認証を使用する場合は、「 必要なサーバーまたはデータベースの権限 」のセクションに記載されているとおり、アカウントに適切な権限が設定されていることを確認してください。
リモート
リモート監視を行う場合は、以下の設定を使用してください:
com.instana.plugin.mssql:
remote: # multiple configurations supported
- host: 'host-1'
instance: 'MSSQLSERVER02' #Instance name of MSSQL Server
user: 'mssql'
password: 'password'
port: '1434'
availabilityZone: 'MSSQLSERVER02_REMOTE'
poll_rate: 60 # seconds
top_queries_poll_rate: 120 # seconds
設定されたリモートMS SQLインスタンスは、 InstanaavailabilityZone のUIにあるインフラストラクチャダッシュボードの指定された場所に、独立したボックスとして表示されます。
SSL または TLS のサポート設定
Instana エージェントがMS SQL Server に安全に接続できるようにするには、エージェントの設定ファイルを<agent_install_dir>/etc/instana/configuration.yaml 次のように設定してください:
ローカル
ローカル監視を行う場合は、以下の設定を使用してください:
com.instana.plugin.mssql:
local:
...
sslTrustStoreLocation: '/path/to/truststore.jks'
sslTrustStorePassword: 'trustStorePassword'
リモート
リモート監視を行う場合は、以下の設定を使用してください:
com.instana.plugin.mssql:
remote:
...
sslTrustStoreLocation: '/path/to/truststore.jks'
sslTrustStorePassword: 'trustStorePassword'
ネットワーク設定
Windows システム上でMicrosoft SQLデータベースと Instana エージェントを実行している場合は、 TCP/IP プロトコルが有効になっており、 SQL Server Browserサービスが実行されていることを確認してください。
カスタムポートの設定
センサーがインスタンスをモニターするために使用する必要があるカスタム・ポート (デフォルト・ポート 1433 以外) を指定する場合は、エージェント構成ファイルでポート・フィールドを指定します。
com.instana.plugin.mssql:
port: 2529 # custom Microsoft SQL TCP port
必要なサーバーまたはデータベースの権限
Instana エージェントの設定ファイルで指定されたユーザー認証情報を使用して、 SQL Server 上の動的管理ビュー(DMV)をクエリします。 エージェント構成ファイルに指定されている SQL ユーザーに VIEW SERVER STATE 権限と VIEW DATABASE STATE 権限があることを確認してください。 これらの許可について詳しくは、 システム動的管理ビューを参照してください。
メトリック収集
メトリクスを表示するには、 Instana のユーザーインターフェースのサイドバーで 「Infrastructure」 を選択し、監視対象の特定のホストをクリックします。すると、収集されたすべてのメトリクスと監視対象のプロセスが表示されたホストダッシュボードが表示されます。
インスタンスレベルのメトリクス
以下のメトリクスは、 SQL Server のインスタンスレベルで収集されます:
構成データ
- インスタンス名
- バージョン
- プロセス ID
- 開始時刻
パフォーマンス・メトリック
| メトリック | 説明 | 粒度 |
|---|---|---|
| ユーザー接続数 | ユーザー接続の数 | 1 秒 |
| 最大接続数 | 同時ユーザー接続の最大数。 デフォルト値は 0 です。これは、接続できるユーザーの数が無制限であることを意味します。 この値を変更するには、 「ユーザー接続の設定」サーバー構成オプションを参照してください。 | 1 秒 |
| サーバーでの待機時間 | Page IO-Latch EX、Page IO-Latch SH、Async Network IO、CX-Packet、Writelog | 1 秒 |
| 読み取りおよび書き込み | 仮想ファイルの読み取りおよび書き込み (バイト) | 1 秒 |
| トランザクション数 | 書き込みトランザクションの数 | 1 秒 |
| エラー | ユーザー、DB オフライン、および接続強制終了エラー | 1 秒 |
| ロック数 | ロック要求とデッドロックの数 | 1 秒 |
| Db メモリー | データベース・メモリー使用量と容量 (MB) | 1 秒 |
| 仮想メモリー | 仮想メモリー (MB) | 1 秒 |
| 応答時間 | トランザクションの応答時間 | 1 秒 |
| DB キャッシュ・ヒット率 | DB キャッシュ・ヒット率 (%) | 1 秒 |
データベース
| メトリック | 説明 | 粒度 |
|---|---|---|
| ユーザー接続数 | ユーザー接続の数 | 1 秒 |
| 読み取りおよび書き込み | 仮想ファイルの読み取りおよび書き込み (バイト) | 1 秒 |
| トランザクション数 | 書き込みトランザクションの数 | 1 秒 |
上位の照会
SQL Server のダッシュボードに「トップクエリ」セクションがあります。 この表は、監視対象のインスタンスに対して発行されたクエリのうち、処理時間に基づいて上位50件を一覧にしたものです。 処理されたSQL文に加え、以下のメトリクスを確認できます:
| メトリック | 説明 | 粒度 |
|---|---|---|
| 実行時間 | 合計および最終実行時間 | 60 秒 |
| 論理読み取り数 | 最後の論理読み取り | 60 秒 |
| 論理書き込み | 最後の論理書き込み | 60 秒 |
AGインスタンスレベルのメトリクス
Always On可用性グループに属する SQL Server インスタンスについては、インスタンスレベルで以下の追加メトリクスが収集されます。
| メトリック | 説明 | 粒度 |
|---|---|---|
| レプリカの役割 | レプリカの現在の役割:解決中、プライマリ、またはセカンダリ | 1 秒 |
| 接続状態 | レプリカの接続状態:切断中または接続中 | 1 秒 |
| 同期化の正常性 | レプリカの全体的な同期状態:正常、部分的に正常、または異常 | 1 秒 |
AGエンティティレベルの指標
Microsoft SQL Server のAlways On可用性グループ(AG)の場合、センサーは集計メトリクスや構成データを収集するための個別のAGエンティティも作成します。
構成データ
| メトリック | 説明 |
|---|---|
| 可用性グループ名 | Always On可用性グループの名前 |
| WSFCクラスター名 | Windows Server Failover Clustering (WSFC) クラスタの名前 |
| リスナーの数 | 可用性グループに設定されたリスナーの総数 |
パフォーマンス・メトリック
| メトリック | 説明 | 粒度 |
|---|---|---|
| レプリカ数 | アベイラビリティ・グループ内のレプリカの総数 | 1 秒 |
| データベース数 | 可用性グループ内のデータベースの総数 | 1 秒 |
暗号化された接続のトラブルシューティング( SSL または TLS )
Instana エージェントが暗号化されたMSSQLサーバーへの接続に失敗した場合は、次のkeytoolコマンドを使用して、信頼済み証明書をJREの cacerts (jvm/jre/lib/security/cacerts) ファイルにインポートしてください:
keytool -import -alias ALIAS_NAME -keystore "/path/to/jre/cacerts" -file YOUR_CERTIFICATE_NAME.crt