Install - .NET Framework Windows Dynamic Agent started as a Windows Service
.NET Framework Compatibility
vFunction supports C# .NET Framework version 4.x applications.
Installation Workflow - Use Environment Variables to set Installation Parameters
- Ensure Prerequisites are met
- Download the vFunction Windows Controller Installation ZIP
- RDP to the Windows Server as the user who runs the Application
- Move the Installation ZIP to the location on the Windows Server where vFunction should run
- Extract the vFunction Installation Package
- Open PowerShell
- Add Environment Variables for the vFunction Dynamic Agent and install the Agent
### Replace the $CHANGE_ME values with the Required Configuration Settings. For detailed Settings explanations, see:
### https://kb.vfunction.com/installations/configurable-settings/mono-dynamic-agent/dotnet/windows/#required
### Replace $BASE_DIR with the Windows location where the vFunction Installation ZIP was extracted
powershell -NoProfile -ExecutionPolicy unrestricted -Command "
Get-ChildItem -Path '$BASE_DIR' -Recurse | Unblock-File;
New-Item -Path Env:\VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_NAME -Value '$CHANGE_ME';
New-Item -Path Env:\VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_HOST -Value '$CHANGE_ME';
New-Item -Path Env:\VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_APP_ID -Value '$CHANGE_ME';
New-Item -Path Env:\VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_ORG_ID -Value '$CHANGE_ME';
New-Item -Path Env:\VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_CLIENT_ID -Value '$CHANGE_ME';
New-Item -Path Env:\VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_CLIENT_SECRET -Value '$CHANGE_ME';
New-Item -Path Env:\VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_INSTANCE_ID -Value '$CHANGE_ME';
New-Item -Path Env:\VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_TAG -Value '$CHANGE_ME';
New-Item -Path Env:\VF_CONTROLLER_DEFAULT_DOTNET_AGENT_VERSION -Value 'framework';
New-Item -Path Env:\VF_CONTROLLER_DEFAULT_DOTNET_AGENT_ENVIRONMENT -Value 'service';
$BASE_DIR\controller-installation\install.ps1 -instance default-dotnet"
- Open the Windows Server’s Registry Editor
- Open the Start Menu
- Search for regedit
- Launch the Registry Editor
- In the left-hand sidebar, expand the folders to get to Application until you get to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\$SERVICE_NAME (where $SERVICE_NAME is relevant to the Application)
- Right-click in the white space below the list of Registry Keys for the Service
- Select New > Multi-String Value
- Replace New Value #1 with Environment
- Double-click the new Environment variable to add Value Data entries
- Paste the Value Data strings below into the Edit Multi-String Value Data text box
VF_AGENT_CONF_LOCATION=$BASE_DIR\config\agent\instances\default-dotnet\conf.json
COR_PROFILER_PATH_64=$BASE_DIR\agent\vfagent.net.dll
COR_PROFILER_PATH_32=$BASE_DIR\agent\vfagent.net.x86.dll
COR_ENABLE_PROFILING=1
COR_PROFILER={cd7d4b53-96c8-4552-9c11-6e41df8eab8a}
COMPlus_TailCallOpt=0
- Click the OK button
- Restart the Windows Service
- Confirm that the Application comes up and functions as expected. If any issues arise:
- Start Learning in the vFunction UI
- Validate the vFunction data collectioncollecting data
Installation Workflow - Use a YAML to set Installation Parameters
- Ensure Prerequisites are met
- Download the vFunction Windows Controller Installation ZIP
- RDP to the Windows Server as the user who runs the Application
- Move the Installation ZIP to the location on the Windows Server where vFunction should run
- Extract the vFunction Installation Package
- In a text editor, open the $BASE_DIR\vfunction\config\installation\instances\default-dotnet\installation.yaml
- Modify the required and optional configurable settings
### Replace the $CHANGE_ME values with the Required Configuration Settings
### Follow the Guidance in the Comments
controller:
name: $CHANGE_ME #VF Server UI identifier for the Agent, e.g. QA-Win1-BillPay
host: $CHANGE_ME #Address of the VF Server, e.g. https://vfunction.organization.com
org_id: $CHANGE_ME #UUID retrieved from VF Server UI's Install Instructions dialog box
app_id: $CHANGE_ME #UUID retrieved from VF Server UI's Install Instructions dialog box
client_id: $CHANGE_ME #UUID retrieved from VF Server UI's Install Instructions dialog box
client_secret: $CHANGE_ME #UUID retrieved from VF Server UI's Install Instructions dialog box
type: dotnet
instance_id: $CHANGE_ME #Field added manually. It's useful if the App is restarted regularly to reuse Agent IDs in the VF Server UI
instrconf_additions:
inclusions:
exclusions:
tags:
- $CHANGE_ME #Strings used for logical groupings for App's Learning, e.g. "prod" or "BillPay"
- $CHANGE_ME #UUID retrieved from VF Server UI's Install Instructions dialog box
server_application:
agent:
version: framework #This field needs to be changed from the default "dotnet"
environment: service #This field needs to be changed from the default "iis"
- Open Powershell
- Install the Agent
### Replace $BASE_DIR with the Windows location where the vFunction Installation ZIP was extracted
powershell -NoProfile -ExecutionPolicy unrestricted -Command "
Get-ChildItem -Path '$BASE_DIR' -Recurse | Unblock-File;
$BASE_DIR\controller-installation\install.ps1 -instance default-dotnet"
- Open the Windows Server’s Registry Editor
- Open the Start Menu
- Search for regedit
- Launch the Registry Editor
- In the left-hand sidebar, expand the folders to get to Application until you get to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\$SERVICE_NAME (where $SERVICE_NAME is relevant to the Application)
- Right-click in the white space below the list of Registry Keys for the Service
- Select New > Multi-String Value
- Replace New Value #1 with Environment
- Double-click the new Environment variable to add Value Data entries
- Paste the Value Data strings below into the Edit Multi-String Value Data text box
VF_AGENT_CONF_LOCATION=$BASE_DIR\config\agent\instances\default-dotnet\conf.json
COR_PROFILER_PATH_64=$BASE_DIR\agent\vfagent.net.dll
COR_PROFILER_PATH_32=$BASE_DIR\agent\vfagent.net.x86.dll
COR_ENABLE_PROFILING=1
COR_PROFILER={cd7d4b53-96c8-4552-9c11-6e41df8eab8a}
COMPlus_TailCallOpt=0
- Click the OK button
- Restart the Windows Service
- Confirm that the Application comes up and functions as expected. If any issues arise:
- Start Learning in the vFunction UI
- Validate the vFunction data collection