Skip to content

Commit d276191

Browse files
committed
Add -NoReset option to service registration functions (#4641)
Affected functions: - Register-OpenTelemetryForIIS - Register-OpenTelemetryForWindowsService - Unregister-OpenTelemetryForWindowsService
1 parent 66531e1 commit d276191

File tree

1 file changed

+29
-6
lines changed

1 file changed

+29
-6
lines changed

script-templates/OpenTelemetry.DotNet.Auto.psm1.template

Lines changed: 29 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -522,9 +522,16 @@ function Register-OpenTelemetryForCurrentSession() {
522522
<#
523523
.SYNOPSIS
524524
Setups IIS environment variables to enable automatic instrumentation.
525-
Performs IIS reset after registration.
525+
Performs IIS reset after registration by default.
526+
.PARAMETER NoReset
527+
Does not perform IIS reset.
526528
#>
527529
function Register-OpenTelemetryForIIS() {
530+
param(
531+
[Parameter(Mandatory = $false)]
532+
[bool]$NoReset = $false
533+
)
534+
528535
$installDir = Get-Current-InstallDir
529536

530537
if (-not $installDir) {
@@ -538,7 +545,9 @@ function Register-OpenTelemetryForIIS() {
538545
Setup-Windows-Service -InstallDir $installDir -WindowsServiceName "W3SVC"
539546
Setup-Windows-Service -InstallDir $installDir -WindowsServiceName "WAS"
540547

541-
Reset-IIS
548+
if (-not $NoReset) {
549+
Reset-IIS
550+
}
542551
}
543552

544553
<#
@@ -549,13 +558,17 @@ function Register-OpenTelemetryForIIS() {
549558
Actual Windows service name in registry.
550559
.PARAMETER OTelServiceName
551560
Specifies OpenTelemetry service name to identify your service.
561+
.PARAMETER NoReset
562+
Does not perform service restart.
552563
#>
553564
function Register-OpenTelemetryForWindowsService() {
554565
param(
555566
[Parameter(Mandatory = $true)]
556567
[string]$WindowsServiceName,
557568
[Parameter(Mandatory = $true)]
558-
[string]$OTelServiceName
569+
[string]$OTelServiceName,
570+
[Parameter(Mandatory = $false)]
571+
[bool]$NoReset = $false
559572
)
560573

561574
$installDir = Get-Current-InstallDir
@@ -565,7 +578,10 @@ function Register-OpenTelemetryForWindowsService() {
565578
}
566579

567580
Setup-Windows-Service -InstallDir $installDir -WindowsServiceName $WindowsServiceName -OTelServiceName $OTelServiceName
568-
Restart-Service -Name $WindowsServiceName -Force
581+
582+
if (-not $NoReset) {
583+
Restart-Service -Name $WindowsServiceName -Force
584+
}
569585
}
570586

571587
<#
@@ -624,15 +640,22 @@ function Unregister-OpenTelemetryForIIS() {
624640
Performs service restart after removal.
625641
.PARAMETER WindowsServiceName
626642
Actual Windows service Name in registry.
643+
.PARAMETER NoReset
644+
Does not perform service restart.
627645
#>
628646
function Unregister-OpenTelemetryForWindowsService() {
629647
param(
630648
[Parameter(Mandatory = $true)]
631-
[string]$WindowsServiceName
649+
[string]$WindowsServiceName,
650+
[Parameter(Mandatory = $false)]
651+
[bool]$NoReset = $false
632652
)
633653

634654
Cleanup-Environment-Variables -WindowsServiceName $WindowsServiceName
635-
Restart-Service -Name $WindowsServiceName -Force
655+
656+
if (-not $NoReset) {
657+
Restart-Service -Name $WindowsServiceName -Force
658+
}
636659
}
637660

638661
<#

0 commit comments

Comments
 (0)