The Vantage platform provides robust monitoring and management for AV equipment in meeting rooms. One of its unique features is the ability to integrate with various manufacturer platforms, including New Relic. This document will guide you on how to integrate Vantage with New Relic.
Pre-requisites
Before you begin the integration process, ensure:
- You have an active Vantage account with licenses for the rooms you wish to monitor.
- Your Windows Microsoft Teams Rooms are networked, operational, and enabled on Microsoft Teams.
- You have administrative access to both your Vantage account and New Relic account.
Steps to Integrate Vantage with New Relic
Step 1: Generate New Relic API key
- Login to New Relic and navigate to the API keys UI page from the user menu by clicking on API keys.
- To create a new API key, click on the ‘Add a key’ button or the ‘+ New API key’ option, depending on the UI.
- Choose the User key type.
- Follow the prompts to name your key and assign it to the appropriate account or application.
- Once created, you can copy the key to your clipboard. Make sure to store it securely as it is used to authenticate and verify your identity.
Step 2: Enable New Relic integration
-
- Log in to your Vantage account.
- Navigate to 'Integrations'.
- Locate New Relic' and click on 'Add Integration'.
- Enter the API Key generated in Step 1 and 'Save'.
Step 3: Install agent on Windows Microsoft Teams Rooms
- Login to New Relic and click Add Data
- Select the Windows data source
- Follow instructions to install the New Relic infrastructure agent
Step 4: Configure Infrastructure Agent
Collect Teams Room Logs
- Open the file
C:\Program Files\New Relic\newrelic-infra\logging.d\logs.yml
- Add the following to the file
- name: skype-room
winevtlog:
channel: Skype Room System
attributes:
logtype: windows_application
Disable telemetry collection (optional)
Vantage does not require telemetry to be collected for agents and can be disabled to reduce the ingest data used.
- Open the file
C:\Program Files\New Relic\newrelic-infra\newrelic-infra.yml
- Add the following to the text file
enable_process_metrics: false
metrics_process_sample_rate: -1
metrics_network_sample_rate: -1
metrics_storage_sample_rate: -1
metrics_system_sample_rate: -1
PowerShell Script
Alternatively you can run the provided PowerShell script to apply the above configurations
# Automated PowerShell script for installing New Relic Infrastructure agent for Microsoft Teams Rooms
# Teams Room Logs
$teamsRoomLogs = @"
- name: skype-room
winevtlog:
channel: Skype Room System
attributes:
logtype: windows_application
"@
# Append the new logging configuration to the existing file
$loggingConfigPath = "C:\Program Files\New Relic\newrelic-infra\logging.d\logs.yml"
Write-Host "Appending to existing logging configuration..."
Add-Content -Path $loggingConfigPath -Value $teamsRoomLogs
# Read the default New Relic Infrastructure configuration
$infraConfigPath = "C:\Program Files\New Relic\newrelic-infra\newrelic-infra.yml"
$defaultConfig = Get-Content -Path $infraConfigPath -Raw
# Retrieve the device serial number
$serialNumber = (Get-WmiObject win32_bios).SerialNumber
Write-Host "Device serial number detected: $serialNumber"
# Add serial number to custom attributes
$defaultConfig = $defaultConfig -replace "(?s)(custom_attributes:\s+nr_deployed_by: newrelic-cli)(\r?\n)", "`$1`r`n device_serial_number: '$serialNumber'"
# New settings to be appended
$newSettings = @"
enable_process_metrics: false
metrics_process_sample_rate: -1
metrics_network_sample_rate: -1
metrics_storage_sample_rate: -1
metrics_system_sample_rate: -1
"@
# Combine default config with new settings
$combinedConfig = $defaultConfig + $newSettings
# Write the combined configuration back to the file
Write-Host "Appending new configuration settings..."
Set-Content -Path $infraConfigPath -Value $combinedConfig -Force
# Restart the New Relic service
$serviceName = "newrelic-infra"
Write-Host "Restarting the New Relic service..."
Restart-Service -Name $serviceName -Force
Write-Host "New Relic Infrastructure agent installation, configuration, and service restart complete."
Data collected by integration
| Label | Key | Description | Data Type | Health | Optional | Usage |
|---|---|---|---|---|---|---|
| Name | name | The name of the device. | string | |||
| Serial Number | serial_number | The serial number of the device. | string | |||
| Operating System | OS | The operating system of the device. | string | |||
| Operating System Version | OSVersion | The operating system version running. | string | |||
| Alias | Alias | The alias of the signed in account. | string | |||
| Display Name | DisplayName | The display name of the device. | string | |||
| App Version | AppVersion | The Teams app version running. | string | |||
| Agent Status | agentStatus | The current status of the agent. | string | ✔ | ||
| Exchange Status | Exchange Status | The status of the Exchange service. | string | ✔ | ||
| Sign in Status | SigninStatus | Is the device signed in to Teams. | string | ✔ | ||
| Teams Sign in Status | TeamsSigninStatus | Is the device signed in to teams. | string | ✔ | ||
| Conference Microphone Status | ConferenceMicrophoneStatus | Is the device signed in to teams. | string | ✔ | ||
| Conference Speaker Status | ConferenceSpeakerStatus | Is the device signed in to teams. | string | ✔ | ||
| Default Speaker Status | DefaultSpeakerStatus | Is the device signed in to teams. | string | ✔ | ||
| Camera Status | CameraStatus | Is the device signed in to teams. | string | ✔ | ||
| Front Of Room Display Status | FrontOfRoomDisplayStatus | Is the device signed in to teams. | string | ✔ | ||
| Motion Sensor Status | MotionSensorStatus | Is the device signed in to teams. | string | ✔ | ||
| HDMI Ingest Status | HdmiIngestStatus | Is the device signed in to teams. | string | ✔ | ||
| Content Camera Status | ContentCameraStatus | Is the device signed in to teams. | string | ✔ |