物理サーバー、仮想マシン、およびスタンドアロンのWindowsインストレーションを含むWindowsセルフホスト環境で、NRDOTコレクターを使用してMicrosoft SQL Serverの監視をセットアップします。
SQL Serverのセキュリティ設定に基づいて、NRDOT CollectorをSQL Serverインスタンスに接続するための3つの認証方法から選択できます:
前提条件
ご使用の環境がNew Relicの互換性および前提条件を満たしていることを確認してください。
NRDOT Collectorセットアップ
WindowsシステムにNRDOT Collectorをインストールします。
PowerShellを使用してNRDOT Collectorをダウンロードし、インストールします:
[Net.ServicePointManager]::SecurityProtocol = 'tls12, tls'; $NRDOT_VERSION = (Invoke-RestMethod -Uri "https://api.github.com/repos/newrelic/nrdot-collector-releases/releases/latest").tag_name; $WebClient = New-Object System.Net.WebClient; $WebClient.Headers.Add("User-Agent", "Mozilla/5.0"); $WebClient.DownloadFile("https://github.com/newrelic/nrdot-collector-releases/releases/download/$NRDOT_VERSION/nrdot-collector_${NRDOT_VERSION}_windows_x64.msi", "$env:TEMP\nrdot-collector.msi"); Start-Process msiexec.exe -ArgumentList "/i `"$env:TEMP\nrdot-collector.msi`" /qn /norestart /L*V `"$env:TEMP\nrdot_install.log`"" -Wait; Get-Service nrdot-collector -ErrorAction SilentlyContinue
データベースユーザーを構成する
次のスクリプトをroot user/sysadminとして実行して、 newrelic監視ユーザーを作成し、グローバル読み取り権限を付与します。
newrelic監視ユーザーを作成するには、SQL Server Management Studio (SSMS) を使用して次のスクリプトを実行します。
USE [master];GOCREATE LOGIN [newrelic] WITH PASSWORD = '<PASSWORD>';GO
GRANT VIEW SERVER STATE TO [newrelic];GRANT VIEW ANY DEFINITION TO [newrelic];GRANT VIEW ANY DATABASE TO [newrelic];GO
DECLARE @name SYSNAME;DECLARE db_cursor CURSOR READ_ONLY FORWARD_ONLY FORSELECT [name]FROM [master].[sys].[databases]WHERE [name] NOT IN ('master', 'msdb', 'model', 'rdsadmin', 'distribution')AND [state] = 0;OPEN db_cursor;FETCH NEXT FROM db_cursor INTO @name;WHILE @@FETCH_STATUS = 0BEGIN BEGIN TRY EXEC('USE [' + @name + ']; IF NOT EXISTS (SELECT 1 FROM sys.database_principals WHERE name = ''newrelic'') BEGIN CREATE USER [newrelic] FOR LOGIN [newrelic]; END; GRANT VIEW DATABASE STATE TO [newrelic];'); END TRY BEGIN CATCH PRINT 'Error on ' + @name + ': ' + ERROR_MESSAGE(); END CATCH FETCH NEXT FROM db_cursor INTO @name;ENDCLOSE db_cursor;DEALLOCATE db_cursor;GONRDOT Collectorを構成する
監視ニーズに基づいて設定タイプを選択してください:
設定パラメーター
次の表は、 nrsqlserver受信機のキー設定を説明しています。
| パラメータ | 説明 |
|---|---|
<YOUR_USERNAME> | 認証用のデータベースユーザー名を入力してください |
<YOUR_PASSWORD> | 認証用のデータベースパスワードを入力してください |
<YOUR_SERVER> | SQL Serverのホスト名またはIPアドレスを入力してください |
<YOUR_PORT> | SQL Serverのポート番号を入力します。デフォルト値は1433です。 |
<YOUR_OTLP_ENDPOINT> | New Relic OTLP エンドポイントを入力します。詳細については、 New Relic OTLP エンドポイントのドキュメントを参照してください。 |
<YOUR_LICENSE_KEY> | New Relicのライセンスキーを入力してください。 |
collection_interval | データベースメトリクスを収集する間隔(秒単位)。デフォルト:15s |
ヒント
注:利用可能なすべてのメトリクスを有効にする場合は、メモリリミッターによるデータのドロップを防ぐために、limit_mibの値を増やしてください(例:1000)。
ヒント
注意:max_concurrent_queriesオプションは、各スクレイプサイクル中にレシーバーがSQL Serverに対して並列に実行するメトリクスクエリの数を制御します。
receivers: nrsqlserver: max_concurrent_queries: 4 # default is 4 if omitted or set to 0Windowsサービスレジストリの更新
新しいmssql-config.yamlファイルを使用するようにWindowsサービスレジストリを更新します。
方法1:PowerShell
PowerShellでアドミニストレーターとして次のコマンドを実行します:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\nrdot-collector" -Name "ImagePath" -Value '"C:\Program Files\nrdot-collector\nrdot-collector.exe" --config "C:\Program Files\nrdot-collector\mssql-config.yaml"'方法2:コマンドプロンプト(代替)
PowerShellが利用できない場合は、代わりにコマンドプロンプトを使用できます:
- スタートメニューを開き、次のように入力します
cmd - コマンドプロンプトを右クリックし、Run as administrator [アドミニストレーターとして実行]を選択します。
- この正確なコマンドを黒いCMDウィンドウにコピーして貼り付け、Enterキーを押します:
sc config "nrdot-collector" binPath= "\"C:\Program Files\nrdot-collector\nrdot-collector.exe\" --config \"C:\Program Files\nrdot-collector\mssql-config.yaml\""NRDOT Collector の設定を検証する
NRDOT Collectorの設定を検証して、正しくフォーマットされ、適切に機能することを確認します。
& "C:\Program Files\nrdot-collector\nrdot-collector.exe" validate --config="C:\Program Files\nrdot-collector\mssql-config.yaml"NRDOTコレクターを再起動します
設定を更新した後、NRDOT Collectorサービスを再起動します:
$net stop nrdot-collector$net start nrdot-collectorヒント
新しい設定を確実に有効にするために、構成の変更後は必ず NRDOT コレクター サービスを再起動してください。
(オプション)APMとデータベースの相関関係を設定する
アプリケーションのパフォーマンスをデータベース操作と関連付けるために、データベース サービス ID を設定できます。 この機能を使用すると、特定のデータベース ワークロードを生成しているアプリケーションを正確に確認できます。詳細については、「 New RelicでAPMとデータベースの相関関係を取得するためのデータベース サービス ID のセットアップ」を参照してください。
重要
APM でデータベース パフォーマンス データを表示するには、両方のエンティティが同じ New Relic アカウント内にある必要があります。エンティティが異なる New Relic アカウントにある場合、データを表示するには両方のアカウントにアクセスできる必要があります。
(オプション)シークレット管理を構成する
シークレット管理機能を使用すると、データベース資格情報などの機密情報を安全に管理できます。これにより、構成ファイルに機密データをハードコーディングすることを避け、監視設定のセキュリティを強化できます。詳細については、シークレット管理を参照してください。
データを探す、使う
データが収集されると、New Relic の UI を通じて包括的な SQL Server データベース監視にアクセスできるようになります。
New Relic で SQL Server データベース エンティティを見つけるには:
- https://one.newrelic.com > All Capabilities > Databasesに移動します。
- Entity typeドロップダウンからMSSQL instanceを選択し、Applyをクリックします。
- エンティティのリストから SQL Server データベースを選択します。
前提条件
ご使用の環境がNew Relicの互換性および前提条件を満たしていることを確認してください。
Windows認証の追加要件:
- Active Directoryを使用したWindowsドメイン環境
- Windows認証を受け入れるように設定されたSQL Server
- 適切なSQL Server権限を持つドメインユーザーアカウント
- ドメインアカウントコンテキストで実行されているNRDOT Collectorサービス
NRDOT Collectorセットアップ
WindowsシステムにNRDOT Collectorをインストールします。
PowerShellを使用してNRDOT Collectorをダウンロードし、インストールします:
[Net.ServicePointManager]::SecurityProtocol = 'tls12, tls'; $NRDOT_VERSION = (Invoke-RestMethod -Uri "https://api.github.com/repos/newrelic/nrdot-collector-releases/releases/latest").tag_name; $WebClient = New-Object System.Net.WebClient; $WebClient.Headers.Add("User-Agent", "Mozilla/5.0"); $WebClient.DownloadFile("https://github.com/newrelic/nrdot-collector-releases/releases/download/$NRDOT_VERSION/nrdot-collector_${NRDOT_VERSION}_windows_x64.msi", "$env:TEMP\nrdot-collector.msi"); Start-Process msiexec.exe -ArgumentList "/i `"$env:TEMP\nrdot-collector.msi`" /qn /norestart /L*V `"$env:TEMP\nrdot_install.log`"" -Wait; Get-Service nrdot-collector -ErrorAction SilentlyContinue
Windows認証のセットアップを確認する
SQL ServerがWindows認証用に設定されていることを確認し、接続を検証します。
Windowsユーザー名を確認します:
SELECT SYSTEM_USER;以下のコマンドを実行して、必要な権限が付与されていることを確認します(
<account_name>をステップ1のユーザー名に更新します):DECLARE @TargetUser SYSNAME = '<account_name>'; -- <-- Set your Windows user here-- 1. Create the checklist of required permissions from your scriptDECLARE @Checklist TABLE (Scope NVARCHAR(50), [Database] SYSNAME, [Permission] NVARCHAR(128));INSERT INTO @Checklist VALUES('Server', 'ALL', 'VIEW SERVER STATE'),('Server', 'ALL', 'VIEW ANY DEFINITION'),('Server', 'ALL', 'VIEW ANY DATABASE');INSERT INTO @ChecklistSELECT 'Database Role', [name], 'db_datareader' FROM sys.databases WHERE [name] NOT IN ('master', 'msdb', 'model', 'rdsadmin', 'distribution') AND [state] = 0UNION ALLSELECT 'Database Explicit', [name], 'VIEW DATABASE STATE' FROM sys.databases WHERE [name] NOT IN ('master', 'msdb', 'model', 'rdsadmin', 'distribution') AND [state] = 0UNION ALLSELECT 'Database Explicit', [name], 'VIEW DEFINITION' FROM sys.databases WHERE [name] NOT IN ('master', 'msdb', 'model', 'rdsadmin', 'distribution') AND [state] = 0;-- 2. Gather existing explicit permissionsWITH ExplicitPerms AS (SELECT 'Server' AS Scope, CAST('ALL' AS NVARCHAR(128)) COLLATE DATABASE_DEFAULT AS [Database], p.permission_name COLLATE DATABASE_DEFAULT AS [Permission]FROM sys.server_permissions p JOIN sys.server_principals l ON p.grantee_principal_id = l.principal_id WHERE l.name = @TargetUserUNION ALLSELECT 'Database Role', d.name COLLATE DATABASE_DEFAULT, r.name COLLATE DATABASE_DEFAULTFROM sys.databases d CROSS APPLY (SELECT dp_role.name FROM sys.database_role_members drm JOIN sys.database_principals dp_role ON drm.role_principal_id = dp_role.principal_id JOIN sys.database_principals dp_user ON drm.member_principal_id = dp_user.principal_id JOIN sys.server_principals sp ON dp_user.sid = sp.sid WHERE sp.name = @TargetUser) r WHERE d.state = 0UNION ALLSELECT 'Database Explicit', d.name COLLATE DATABASE_DEFAULT, p.permission_name COLLATE DATABASE_DEFAULTFROM sys.databases d CROSS APPLY (SELECT db_p.permission_name FROM sys.database_permissions db_p JOIN sys.database_principals dp_user ON db_p.grantee_principal_id = dp_user.principal_id JOIN sys.server_principals sp ON dp_user.sid = sp.sid WHERE sp.name = @TargetUser) p WHERE d.state = 0)-- 3. Output the exact verification matrixSELECTchk.Scope,chk.[Database],chk.[Permission] AS [Required Permission],CASEWHEN exp.[Permission] IS NOT NULL THEN 'GRANTED'WHEN IS_SRVROLEMEMBER('sysadmin', @TargetUser) = 1 THEN 'PASSED (via SysAdmin Role)'ELSE 'MISSING'END AS [Verification Status]FROM @Checklist chkLEFT JOIN ExplicitPerms exp ON chk.Scope = exp.Scope AND chk.[Database] = exp.[Database] AND chk.[Permission] = exp.[Permission]ORDER BY chk.Scope, chk.[Database], chk.[Permission];必要な権限がない場合は、次の権限付与を実行します(
<account_name>をWindowsアカウントに置き換えてください):USE [master];GO-- 1. Grant Instance-level permissions to your Windows AccountGRANT VIEW SERVER STATE TO [<account_name>];GRANT VIEW ANY DEFINITION TO [<account_name>];GRANT VIEW ANY DATABASE TO [<account_name>];GO-- 2. Loop through all user databases and grant read/visibility permissionsDECLARE @name SYSNAME;DECLARE @sql NVARCHAR(MAX);DECLARE db_cursor CURSOR READ_ONLY FORWARD_ONLY FORSELECT [name]FROM [master].[sys].[databases]WHERE [name] NOT IN ('master', 'msdb', 'model', 'rdsadmin', 'distribution')AND [state] = 0; -- Only online databasesOPEN db_cursor;FETCH NEXT FROM db_cursor INTO @name;WHILE @@FETCH_STATUS = 0BEGINBEGIN TRYPRINT 'Granting permissions on database: ' + @name;-- Create the database user mapping if it doesn't exist, then grant rolesSET @sql = 'USE [' + @name + '];IF NOT EXISTS (SELECT 1 FROM sys.database_principals WHERE name = ''<account_name>'')BEGINCREATE USER [<account_name>] FOR LOGIN [<account_name>];END;GRANT VIEW DATABASE STATE TO [<account_name>];GRANT VIEW DEFINITION TO [<account_name>];ALTER ROLE db_datareader ADD MEMBER [<account_name>];';EXEC sp_executesql @sql;PRINT 'Success: ' + @name;END TRYBEGIN CATCHPRINT 'Error on ' + @name + ': ' + ERROR_MESSAGE();END CATCHFETCH NEXT FROM db_cursor INTO @name;ENDCLOSE db_cursor;DEALLOCATE db_cursor;GO重要
重要な注意事項:
<account_name>のすべてのインスタンスを実際のWindowsアカウント名(例:ComputerName\Username)に置き換えます。SQL Server Management Studio(SSMS)またはsqlcmdユーティリティを使用して、これらのスクリプトを実行します。確認スクリプトは、不足している権限を正確に示します。
NRDOT Collectorを構成する
ニーズに基づいて監視設定を選択します:
設定パラメーター
次の表は、 nrsqlserver受信機のキー設定を説明しています。
| パラメータ | 説明 |
|---|---|
<YOUR_HOSTNAME> | SQL Serverのホスト名またはIPアドレスを入力してください |
<YOUR_PORT> | SQL Serverのポート番号を入力します。デフォルト値は1433です。 |
<YOUR_OTLP_ENDPOINT> | New Relic OTLP エンドポイントを入力します。詳細については、 New Relic OTLP エンドポイントのドキュメントを参照してください。 |
<YOUR_LICENSE_KEY> | New Relicのライセンスキーを入力してください。 |
collection_interval | データベースメトリクスを収集する間隔(秒単位)。デフォルト:15s |
ヒント
注:利用可能なすべてのメトリクスを有効にする場合は、メモリリミッターによるデータのドロップを防ぐために、limit_mibの値を増やしてください(例:1000)。
ヒント
注意:max_concurrent_queriesオプションは、各スクレイプサイクル中にレシーバーがSQL Serverに対して並列に実行するメトリクスクエリの数を制御します。
receivers: nrsqlserver: max_concurrent_queries: 4 # default is 4 if omitted or set to 0Windowsサービスレジストリの更新
新しいmssql-config.yamlファイルを使用するようにWindowsサービスレジストリを更新します。
方法1:PowerShell
PowerShellでアドミニストレーターとして次のコマンドを実行します:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\nrdot-collector" -Name "ImagePath" -Value '"C:\Program Files\nrdot-collector\nrdot-collector.exe" --config "C:\Program Files\nrdot-collector\mssql-config.yaml"'方法2:コマンドプロンプト(代替)
PowerShellが利用できない場合は、代わりにコマンドプロンプトを使用できます:
- スタートメニューを開き、次のように入力します
cmd - コマンドプロンプトを右クリックし、Run as administrator [アドミニストレーターとして実行]を選択します。
- この正確なコマンドを黒いCMDウィンドウにコピーして貼り付け、Enterキーを押します:
sc config "nrdot-collector" binPath= "\"C:\Program Files\nrdot-collector\nrdot-collector.exe\" --config \"C:\Program Files\nrdot-collector\mssql-config.yaml\""NRDOT Collector の設定を検証する
NRDOT Collectorの設定を検証して、正しくフォーマットされ、適切に機能することを確認します。
& "C:\Program Files\nrdot-collector\nrdot-collector.exe" validate --config="C:\Program Files\nrdot-collector\mssql-config.yaml"NRDOTコレクターを再起動します
設定を更新した後、NRDOT Collectorサービスを再起動します:
$net stop nrdot-collector$net start nrdot-collectorヒント
新しい設定を確実に有効にするために、構成の変更後は必ず NRDOT コレクター サービスを再起動してください。
(オプション)APMとデータベースの相関関係を設定する
アプリケーションのパフォーマンスをデータベース操作と関連付けるために、データベース サービス ID を設定できます。 この機能を使用すると、特定のデータベース ワークロードを生成しているアプリケーションを正確に確認できます。詳細については、「 New RelicでAPMとデータベースの相関関係を取得するためのデータベース サービス ID のセットアップ」を参照してください。
重要
APM でデータベース パフォーマンス データを表示するには、両方のエンティティが同じ New Relic アカウント内にある必要があります。エンティティが異なる New Relic アカウントにある場合、データを表示するには両方のアカウントにアクセスできる必要があります。
(オプション)シークレット管理を構成する
シークレット管理機能を使用すると、データベース資格情報などの機密情報を安全に管理できます。これにより、構成ファイルに機密データをハードコーディングすることを避け、監視設定のセキュリティを強化できます。詳細については、シークレット管理を参照してください。
データを探す、使う
データが収集されると、New Relic の UI を通じて包括的な SQL Server データベース監視にアクセスできるようになります。
New Relic で SQL Server データベース エンティティを見つけるには:
- https://one.newrelic.com > All Capabilities > Databasesに移動します。
- Entity typeドロップダウンからMSSQL instanceを選択し、Applyをクリックします。
- エンティティのリストから SQL Server データベースを選択します。
前提条件
ご使用の環境がNew Relicの互換性および前提条件を満たしていることを確認してください。
gMSA(グループ管理サービスアカウント)の追加要件:
- gMSAをサポートするActive Directory環境
- SQL Serverアクセス用に作成および設定されたgMSAアカウント
- Windowsホストはドメインに参加しており、gMSAアカウントを使用する権限が付与されている必要があります。
NRDOT Collectorセットアップ
WindowsシステムにNRDOT Collectorをインストールします。
PowerShellを使用してNRDOT Collectorをダウンロードし、インストールします:
[Net.ServicePointManager]::SecurityProtocol = 'tls12, tls'; $NRDOT_VERSION = (Invoke-RestMethod -Uri "https://api.github.com/repos/newrelic/nrdot-collector-releases/releases/latest").tag_name; $WebClient = New-Object System.Net.WebClient; $WebClient.Headers.Add("User-Agent", "Mozilla/5.0"); $WebClient.DownloadFile("https://github.com/newrelic/nrdot-collector-releases/releases/download/$NRDOT_VERSION/nrdot-collector_${NRDOT_VERSION}_windows_x64.msi", "$env:TEMP\nrdot-collector.msi"); Start-Process msiexec.exe -ArgumentList "/i `"$env:TEMP\nrdot-collector.msi`" /qn /norestart /L*V `"$env:TEMP\nrdot_install.log`"" -Wait; Get-Service nrdot-collector -ErrorAction SilentlyContinue
MicrosoftSQLServerを有効にする
SSMSを開き、Windows認証でログインし、新しいクエリを開いて、次のデータベース管理スクリプトを実行します:
USE master;GO
-- Provision an engine login identity for the gMSACREATE LOGIN [<DOMAIN>\<gMSA_NAME>$] FROM WINDOWS;GO
-- Grant monitoring permissionsGRANT VIEW SERVER STATE TO [<DOMAIN>\<gMSA_NAME>$];GRANT VIEW ANY DEFINITION TO [<DOMAIN>\<gMSA_NAME>$];GRANT VIEW ANY DATABASE TO [<DOMAIN>\<gMSA_NAME>$];GO
-- Grant access to all databases (required for query monitoring and tempdb metrics)DECLARE @name SYSNAME;DECLARE db_cursor CURSOR READ_ONLY FORWARD_ONLY FORSELECT [name] FROM [master].[sys].[databases]WHERE [name] NOT IN ('master','msdb','model','rdsadmin','distribution')AND [state] = 0;OPEN db_cursor;FETCH NEXT FROM db_cursor INTO @name;WHILE @@FETCH_STATUS = 0BEGIN BEGIN TRY EXEC('USE [' + @name + ']; IF NOT EXISTS (SELECT 1 FROM sys.database_principals WHERE name = ''<DOMAIN>\<gMSA_NAME>$'') BEGIN CREATE USER [<DOMAIN>\<gMSA_NAME>$] FOR LOGIN [<DOMAIN>\<gMSA_NAME>$]; END; GRANT VIEW DATABASE STATE TO [<DOMAIN>\<gMSA_NAME>$];'); END TRY BEGIN CATCH PRINT 'Error on ' + @name + ': ' + ERROR_MESSAGE(); END CATCH FETCH NEXT FROM db_cursor INTO @name;ENDCLOSE db_cursor;DEALLOCATE db_cursor;GO重要
[<DOMAIN>\<gMSA_NAME>$]を実際のgMSAアカウント名に置き換えます。末尾の$は、gMSAアカウントに必要です。
NRDOT CollectorサービスをgMSAとして実行するように設定する
NRDOT Collectorをインストールした後、PowerShellを使用してgMSAアカウントとして実行するようにサービスを設定します:
# Stop the NRDOT Collector serviceStop-Service nrdot-collector
# Configure service to use gMSA account# Use cmd /c to avoid PowerShell treating $ as a variablecmd /c 'sc config nrdot-collector obj= "DOMAIN\gMSA-Account$" password= ""'
# Verify the configurationGet-WmiObject Win32_Service -Filter "Name='nrdot-collector'" | Select Name, StartName
# start the NRDOT Collector serviceStart-Service nrdot-collector重要
DOMAIN\gMSA-Account$を実際のgMSAアカウント名に置き換えます。gMSAアカウントには末尾の$が必要であることに注意してください。gMSAが自動的に認証を処理するため、パスワードは必要ありません。
NRDOT Collectorを構成する
ニーズに基づいて監視設定を選択します:
設定パラメーター
次の表は、 nrsqlserver受信機のキー設定を説明しています。
| パラメータ | 説明 |
|---|---|
<YOUR_HOSTNAME> | SQL Serverのホスト名またはIPアドレスを入力してください |
<YOUR_PORT> | SQL Serverのポート番号を入力します。デフォルト値は1433です。 |
<YOUR_OTLP_ENDPOINT> | New Relic OTLP エンドポイントを入力します。詳細については、 New Relic OTLP エンドポイントのドキュメントを参照してください。 |
<YOUR_LICENSE_KEY> | New Relicのライセンスキーを入力してください。 |
collection_interval | データベースメトリクスを収集する間隔(秒単位)。デフォルト:15s |
ヒント
注:利用可能なすべてのメトリクスを有効にする場合は、メモリリミッターによるデータのドロップを防ぐために、limit_mibの値を増やしてください(例:1000)。
ヒント
注意:max_concurrent_queriesオプションは、各スクレイプサイクル中にレシーバーがSQL Serverに対して並列に実行するメトリクスクエリの数を制御します。
receivers: nrsqlserver: max_concurrent_queries: 4 # default is 4 if omitted or set to 0Windowsサービスレジストリの更新
新しいmssql-config.yamlファイルを使用するようにWindowsサービスレジストリを更新します。
方法1:PowerShell
PowerShellでアドミニストレーターとして次のコマンドを実行します:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\nrdot-collector" -Name "ImagePath" -Value '"C:\Program Files\nrdot-collector\nrdot-collector.exe" --config "C:\Program Files\nrdot-collector\mssql-config.yaml"'方法2:コマンドプロンプト(代替)
PowerShellが利用できない場合は、代わりにコマンドプロンプトを使用できます:
- スタートメニューを開き、次のように入力します
cmd - コマンドプロンプトを右クリックし、Run as administrator [アドミニストレーターとして実行]を選択します。
- この正確なコマンドを黒いCMDウィンドウにコピーして貼り付け、Enterキーを押します:
sc config "nrdot-collector" binPath= "\"C:\Program Files\nrdot-collector\nrdot-collector.exe\" --config \"C:\Program Files\nrdot-collector\mssql-config.yaml\""NRDOT Collector の設定を検証する
NRDOT Collectorの設定を検証して、正しくフォーマットされ、適切に機能することを確認します。
& "C:\Program Files\nrdot-collector\nrdot-collector.exe" validate --config="C:\Program Files\nrdot-collector\mssql-config.yaml"NRDOTコレクターを再起動します
設定を更新した後、NRDOT Collectorサービスを再起動します:
$net stop nrdot-collector$net start nrdot-collectorヒント
新しい設定を確実に有効にするために、構成の変更後は必ず NRDOT コレクター サービスを再起動してください。
(オプション)APMとデータベースの相関関係を設定する
アプリケーションのパフォーマンスをデータベース操作と関連付けるために、データベース サービス ID を設定できます。 この機能を使用すると、特定のデータベース ワークロードを生成しているアプリケーションを正確に確認できます。詳細については、「 New RelicでAPMとデータベースの相関関係を取得するためのデータベース サービス ID のセットアップ」を参照してください。
重要
APM でデータベース パフォーマンス データを表示するには、両方のエンティティが同じ New Relic アカウント内にある必要があります。エンティティが異なる New Relic アカウントにある場合、データを表示するには両方のアカウントにアクセスできる必要があります。
(オプション)シークレット管理を構成する
シークレット管理機能を使用すると、データベース資格情報などの機密情報を安全に管理できます。これにより、構成ファイルに機密データをハードコーディングすることを避け、監視設定のセキュリティを強化できます。詳細については、シークレット管理を参照してください。
データを探す、使う
データが収集されると、New Relic の UI を通じて包括的な SQL Server データベース監視にアクセスできるようになります。
New Relic で SQL Server データベース エンティティを見つけるには:
- https://one.newrelic.com > All Capabilities > Databasesに移動します。
- Entity typeドロップダウンからMSSQL instanceを選択し、Applyをクリックします。
- エンティティのリストから SQL Server データベースを選択します。
次のステップ
Windowsセルフホスト型監視を設定した後: