New-PSWorkflowExecutionOption

Hiermee maakt u een object met sessieconfiguratieopties voor werkstroomsessies.

Syntax

New-PSWorkflowExecutionOption
   [-PersistencePath <String>]
   [-MaxPersistenceStoreSizeGB <Int64>]
   [-PersistWithEncryption]
   [-MaxRunningWorkflows <Int32>]
   [-AllowedActivity <String[]>]
   [-OutOfProcessActivity <String[]>]
   [-EnableValidation]
   [-MaxDisconnectedSessions <Int32>]
   [-MaxConnectedSessions <Int32>]
   [-MaxSessionsPerWorkflow <Int32>]
   [-MaxSessionsPerRemoteNode <Int32>]
   [-MaxActivityProcesses <Int32>]
   [-ActivityProcessIdleTimeoutSec <Int32>]
   [-RemoteNodeSessionIdleTimeoutSec <Int32>]
   [-SessionThrottleLimit <Int32>]
   [-WorkflowShutdownTimeoutMSec <Int32>]
   [<CommonParameters>]

Description

Met de New-PSWorkflowExecutionOption cmdlet maakt u een object met geavanceerde opties voor werkstroomsessieconfiguraties. Dit zijn sessieconfiguraties die zijn ontworpen om Windows PowerShell Werkstroomwerkstromen uit te voeren.

U kunt het PSWorkflowExecutionOption-object gebruiken dat New-PSWorkflowExecutionOption wordt gegenereerd als de waarde van de parameter SessionTypeOption van cmdlets die een sessieconfiguratie maken of wijzigen, zoals de Register-PSSessionConfiguration en Set-PSSessionConfiguration cmdlets.

Elke parameter van de New-PSWorkflowExecutionOption cmdlet vertegenwoordigt een eigenschap van het optieobject voor de configuratie van de werkstroomsessie dat door de cmdlet wordt geretourneerd. Als u een parameter weglaat, maakt de cmdlet het object met een standaardwaarde voor de eigenschap.

De New-PSWorkflowExecutionOption cmdlet maakt deel uit van de functie Windows PowerShell Workflow.

U kunt ook algemene parameters voor werkstromen toevoegen aan deze opdracht. Zie about_WorkflowCommonParameters voor meer informatie over algemene parameters voor werkstromen.

Deze cmdlet wordt geïntroduceerd in Windows PowerShell 3.0.

Voorbeelden

Voorbeeld 1: Een werkstroomoptiesobject maken

New-PSWorkflowExecutionOption -MaxSessionsPerWorkflow 10 -MaxDisconnectedSessions 200

SessionThrottleLimit                       : 100
PersistencePath                            : C:\Users\User01\AppData\Local\Microsoft\Windows\PowerShell\WF\PS
MaxPersistenceStoreSizeGB                  : 10
PersistWithEncryption                      : False
MaxRunningWorkflows                        : 30
AllowedActivity                            : {PSDefaultActivities}
OutOfProcessActivity                       : {InlineScript}
EnableValidation                           : True
MaxDisconnectedSessions                    : 200
MaxConnectedSessions                       : 100
MaxSessionsPerWorkflow                     : 10
MaxSessionsPerRemoteNode                   : 5
MaxActivityProcesses                       : 5
ActivityProcessIdleTimeoutSec              : 60
RemoteNodeSessionIdleTimeoutSec            : 60
WorkflowShutdownTimeoutMSec                : 500

Met deze opdracht wordt de New-PSWorkflowExecutionOption cmdlet gebruikt om de maxSessionsPerWorkflow-waarde te verhogen naar 10 en de waarde MaxDisconnectedSessions te verlagen tot 200.

De uitvoer toont het object dat door de cmdlet wordt geretourneerd.

Voorbeeld 2: Een werkstroomoptiesobject gebruiken

# Create a Workflow Options object and save it in a variable
$wo = New-PSWorkflowExecutionOption -MaxSessionsPerWorkflow 10 -MaxDisconnectedSessions 200
# Create the ITWorkflow session configuration
Register-PSSessionConfiguration -Name ITWorkflows -SessionTypeOption $wo -Force

WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Plugin

Type            Keys                                Name
----            ----                                ----
Container       {Name=ITWorkflows}                  ITWorkflows

Get-PSSessionConfiguration ITWorkflows | Format-List -Property *

Architecture                  : 64
Filename                      : %windir%\system32\pwrshplugin.dll
ResourceUri                   : http://schemas.microsoft.com/powershell/ITWorkflows
MaxConcurrentCommandsPerShell : 1000
allowedactivity               : PSDefaultActivities
UseSharedProcess              : false
ProcessIdleTimeoutSec         : 0
xmlns                         : http://schemas.microsoft.com/wbem/wsman/1/config/PluginConfiguration
MaxConcurrentUsers            : 5
maxsessionsperworkflow        : 10
lang                          : en-US
sessionconfigurationdata      : <SessionConfigurationData>
                                    <Param Name='PrivateData'>
                                        <PrivateData>
                                            <ParamName='enablevalidation' Value='True'/>
                                            <Param Name='allowedactivity'Value='PSDefaultActivities' />
                                            <Param Name='outofprocessactivity' Value='InlineScript'/>
                                            <Param Name='maxdisconnectedsessions' Value='200' />
                                            <ParamName='maxsessionsperworkflow' Value='10'/>
                                        </PrivateData>
                                    </Param>
                                </SessionConfigurationData>
SupportsOptions               : true
ExactMatch                    : true
RunAsUser                     :
IdleTimeoutms                 : 7200000
PSVersion                     : 3.0
OutputBufferingMode           : Block
AutoRestart                   : false
MaxShells                     : 25
MaxMemoryPerShellMB           : 1024
MaxIdleTimeoutms              : 43200000
outofprocessactivity          : InlineScript
SDKVersion                    : 2
Name                          : ITWorkflows
XmlRenderingType              : text
Capability                    : {Shell}
RunAsPassword                 :
MaxProcessesPerShell          : 15
enablevalidation              : True
Enabled                       : True
maxdisconnectedsessions       : 200
MaxShellsPerUser              : 25
Permission                    :

Met de eerste twee opdrachten maakt u een nieuw sessieconfiguratieobject en registreert u het.

De derde opdracht maakt gebruik van de Get-PSSessionConfiguration cmdlet voor het ophalen van de ITWorkflows-sessieconfiguratie en de Format-List opdracht om alle eigenschappen van de sessieconfiguratie in een lijst weer te geven. In de uitvoer ziet u dat de werkstroomopties in de sessieconfiguratie. De sessieconfiguratie heeft een eigenschap MaxSessionsPerWorkflow met een waarde van 10 en een eigenschap MaxDisconnectedSessions met een waarde van 200.

Parameters

-ActivityProcessIdleTimeoutSec

Bepaalt hoe lang elk activiteitshostproces wordt onderhouden nadat het proces inactief is. Wanneer het interval verloopt, wordt het proces gesloten.

Voer een waarde in seconden in. De standaardwaarde is 60.

Type:Int32
Position:Named
Default value:60
Accept pipeline input:False
Accept wildcard characters:False
-AllowedActivity

Hiermee geeft u de activiteiten op die mogen worden uitgevoerd in de sessie.

Voer namen van naamruimte-gekwalificeerde activiteiten in, zoals Microsoft.Powershell.HyperV.Activities.*. Jokertekens worden ondersteund. De standaardwaarde PSDefaultActivities bevat de ingebouwde Windows Workflow Foundation-activiteiten en de activiteiten die de kern-Windows PowerShell cmdlets vertegenwoordigen.

Type:String[]
Position:Named
Default value:PSDefaultActivities
Accept pipeline input:False
Accept wildcard characters:False
-EnableValidation

Controleert of alle werkstroomactiviteiten in de sessie zijn opgenomen in de lijst met toegestane activiteiten.

De standaardwaarde is Waar. Gebruik de volgende opdrachtindeling om validatie uit te schakelen: -EnableValidation:$false.

Type:SwitchParameter
Position:Named
Default value:True
Accept pipeline input:False
Accept wildcard characters:False
-MaxActivityProcesses

Hiermee geeft u het maximum aantal processen op dat in de sessie kan worden gemaakt om werkstroomactiviteiten te ondersteunen. De standaardwaarde is 5.

Type:Int32
Position:Named
Default value:5
Accept pipeline input:False
Accept wildcard characters:False
-MaxConnectedSessions

Hiermee geeft u het maximum aantal externe sessies op dat zich in een operationele status bevindt. Dit quotum wordt toegepast op sessies die zijn verbonden met alle externe knooppunten (doelcomputers). De standaardwaarde is 100.

Type:Int32
Position:Named
Default value:100
Accept pipeline input:False
Accept wildcard characters:False
-MaxDisconnectedSessions

Hiermee geeft u het maximum aantal externe sessies op dat zich in een niet-verbonden status bevindt. Dit quotum wordt toegepast op sessies die zijn verbonden met alle externe knooppunten (doelcomputers). De standaardwaarde is 1000.

Type:Int32
Position:Named
Default value:1000
Accept pipeline input:False
Accept wildcard characters:False
-MaxPersistenceStoreSizeGB

Hiermee geeft u de maximale grootte, in gigabytes, van het persistentiearchief dat is toegewezen aan werkstromen die in de sessie worden uitgevoerd. Wanneer de grootte wordt overschreden, wordt het persistentiearchief uitgebreid om alle persistente gegevens op te slaan, maar er wordt een waarschuwing weergegeven en er wordt een bericht naar het gebeurtenislogboek van de werkstroom geschreven. De standaardwaarde is 10.

Het persistentiearchief bevat gegevens voor alle werkstroomtaken. Met de mogelijkheid om gegevens op te slaan, kunnen de taken worden hervat zonder de status te verliezen.

Type:Int64
Position:Named
Default value:10
Accept pipeline input:False
Accept wildcard characters:False
-MaxRunningWorkflows

Hiermee geeft u het maximum aantal werkstromen op dat gelijktijdig kan worden uitgevoerd in de sessie. De standaardwaarde is 30.

Type:Int32
Position:Named
Default value:30
Accept pipeline input:False
Accept wildcard characters:False
-MaxSessionsPerRemoteNode

Hiermee geeft u het maximum aantal sessies op dat kan worden verbonden met elk extern knooppunt (doelcomputer). De standaardwaarde is 5.

Type:Int32
Position:Named
Default value:5
Accept pipeline input:False
Accept wildcard characters:False
-MaxSessionsPerWorkflow

Hiermee geeft u het maximum aantal sessies op dat kan worden gemaakt ter ondersteuning van elke werkstroom. De standaardwaarde is 5.

Type:Int32
Position:Named
Default value:5
Accept pipeline input:False
Accept wildcard characters:False
-OutOfProcessActivity

Bepaalt welke toegestane activiteiten (opgegeven door de parameter AllowedActivities ) niet meer worden verwerkt. De standaardwaarde is InlineScript.

Type:String[]
Position:Named
Default value:InlineScript
Accept pipeline input:False
Accept wildcard characters:False
-PersistencePath

Hiermee geeft u de locatie op schijf waar werkstroomstatus en gegevens worden opgeslagen. Door de werkstroomstatus en -gegevens op te slaan, kunnen werkstromen worden onderbroken en hervat en kunnen ze worden hersteld van onderbrekingen en netwerkfouten.

De standaardwaarde is $env:LocalAppData\Microsoft\Windows\PowerShell\WF\PS.

Type:String
Position:Named
Default value:False
Accept pipeline input:False
Accept wildcard characters:False
-PersistWithEncryption

Geeft aan dat de werkstroom de gegevens in het persistentiearchief versleutelt. Overweeg deze functie te gebruiken bij het opslaan van persistentiegegevens in een netwerkshare.

Type:SwitchParameter
Position:Named
Default value:$env:LocalAppData\Microsoft\Windows\PowerShell\WF\PS
Accept pipeline input:False
Accept wildcard characters:False
-RemoteNodeSessionIdleTimeoutSec

Hiermee geeft u op hoe lang een sessie die is verbonden met een extern knooppunt (doelcomputer) wordt onderhouden als deze niet actief is.

Voer een waarde in seconden in. De standaardwaarde is 60.

Type:Int32
Position:Named
Default value:60
Accept pipeline input:False
Accept wildcard characters:False
-SessionThrottleLimit

Hiermee geeft u op hoeveel bewerkingen worden gemaakt ter ondersteuning van alle werkstromen die in de sessie zijn gestart. De standaardwaarde is 100.

Type:Int32
Position:Named
Default value:100
Accept pipeline input:False
Accept wildcard characters:False
-WorkflowShutdownTimeoutMSec

Hiermee geeft u op hoe lang de sessie wordt onderhouden nadat alle werkstromen in de sessie geforceerd zijn onderbroken. Wanneer de time-out verloopt, Windows PowerShell de sessie wordt gesloten, zelfs als alle werkstromen nog niet zijn onderbroken.

Voer een waarde in milliseconden in. De standaardwaarde is 500.

Type:Int32
Position:Named
Default value:500
Accept pipeline input:False
Accept wildcard characters:False

Invoerwaarden

None

U kunt geen invoer doorsluisen naar deze cmdlet.

Uitvoerwaarden

PSWorkflowExecutionOption

Notities

Wanneer de maximumwaarde die is ingesteld door een optie wordt overschreden, mislukt de opdracht om een ander exemplaar in de sessie te maken, tenzij vermeld in de parameterbeschrijving. Als de waarde van MaxConnectedSessions bijvoorbeeld 100 is. De opdracht voor het maken van de 101e sessie naar een extern knooppunt (doelcomputer) mislukt.

De eigenschappen van een sessieconfiguratieobject variëren met de opties die zijn ingesteld voor de sessieconfiguratie en de waarden van deze opties. Ook hebben sessieconfiguraties die gebruikmaken van een sessieconfiguratiebestand aanvullende eigenschappen.

De eigenschappen van sessieconfiguraties met een PSWorkflowExecutionOptions-object variëren met name op basis van de waarden van de werkstroomoptie. Als de sessieconfiguratie bijvoorbeeld een PSWorkflowExecutionOptions-object bevat dat een niet-standaardwaarde instelt voor de eigenschap SessionThrottleLimit , heeft de sessieconfiguratie een eigenschap SessionThrottleLimit . Anders is dat niet het geval.